The interpretation of clauses 8.4 through 8.7 of ISO 9594-8 is
pretty well understood to provide some structure without algorithm
details for any particular method. What it does is tell you
how to turn local representation into canonicalized bytes as input
to your hash function, which returns a bunch of octets. You then
encode the octets as an octet string, and encrypt to get a bitstring,
then include the bitstring in the signed result encoding.
Nothing prevents the encryption/hashing methods from doing transforms
on these strings, like, stripping off the first two bytes, since they
are always the same.
The standard really isn't ambiguous, but it is incomplete. If the
algorithm descriptions are incomplete also, or if they misinterpret
the standard, then interoperability suffers.