I would read the former as "one hundred twenty three eights", but the latter as "twelve (plus) three eights", so it's not completely a one-to-one relationship.
Comment on Re^4: Unicode vulgar fraction composition
Yes, my understanding is that's how Unicode would have you interpret each of those.
So the problem then becomes that running NFKC on the latter produces the former: a nonequivalent string, therefore erroneous output. The correctly decomposed form of "12\N{VULGAR FRACTION THREE EIGHTHS}" would be, I presume, "12\N{ZERO WIDTH NON-JOINER}3\N{FRACTION SLASH}8". (Whether this is a bug or merely a "gotcha" in NFKC I suppose is a matter of interpretation.)
But point taken that context matters when composing vulgar fractions.