fontdef.dtx defines the various series, family and style defaults using \newcommand, e.g.
This gives defines them as \long However, the commands \fontfamily, \fontseries and \fontshape define \f@family, \f@series and \f@shape using \edef which maked the resulting values not \long
This means that code that would do something like, e.g., \ifx\f@shape\itdefault…\fi will not work as expected.
The simplest fix would be to use the starred form of \newcommand for setting the various \XXdefault values. I would imagine that this should not break anything