When DSCP was RFC'ed, although it replaces IPPrec (as is reuses the same ToS "field" of the packet), its suggested implementation was done in such a way to be, more or less, backward compatible with IPPrec. So, for instance, IPPrec zero and BE are treated alike (and look alike for the IPPrec bits), IPPrecs six and seven, within DSCP, are left alone for network "stuff", and AF classes align with IPPrec 1..4 (excluding the latter RFC for scavenger, which use CS1, which has less precedence than BE although IPPrec 1 has better precedence than IPPrec 0).
So, even though one AF class does not (technically) have precedence over another, traffic suggested to be mapped to those classes assumes "older" IPPrec devices may prioritize by IPPrec value.
If this doesn't answer your question, let me know.