Originally Posted by PoP
...Or additional metadata that I am missing?
I solved my own problem.
I noticed in that in the MOBI header, at offsets 96 and 100 are the input and output languages for dictionaries.
It seems that Mobi2Mobi is reporting the language locale field at offset 92 and ignores the two next fields.
I then used a Hex editor to patch these fields in my spanish dictionary to 1034 1034 and in my german dictionary to 1031 1031 (replicating the language locale field indicated by Mobi2Mobi from offset 92).
Now all my dictionaries are switched to properly depending on the language locale of the book read.