Vielleicht bringt der FileHeader der Bitmap das Ausleseverfahren durcheinander?
Hab mir das nie angeschaut, weil ich kein persönliches Interesse daran habe. Aber falls dem so sein sollte wäre es z.B. möglich eine base64 (De)Kodierung für sämtliche zu speichernden Daten zu verwenden. Dadurch sollten Konflikte komplett ausgeschlossen sein. Das geht dann aber halt zu lasten der Performance und Speicherplatzeffizienz.