I don't think it's a header problem as you can inspect the header with for instance Mesen and they should all check out okay. The header itself is not complicated, just a few bytes, do I'm not sure what is going on.
Anyway, good you got it working!