This isn't a bug. The Ominous Banner is built from a white banner, which is why its eyes have white instead of another color. As such, your shield is not a light grey or a grey shield, but a white shield, and the main color can't have changed to white because it was white all along. I understand your confusion, but I think the shield is white in order to create an illager face on a banner with a minimal amount of patterns applied.
Did a bunch of investigating, basically you got unlucky (around a 3-6% chance, according to some math). The mansion's initial starting chunk was mostly in the map's boundaries, so of the available map areas, that map's area was chosen to represent it. But, the starting block (the northwest corner of the chunk) was not within the map's boundaries. Given that the icon is displayed on top of the starting block and not the middle of the chunk, it couldn't be displayed on the map. This sounds like a bug by its nature, but it might be intended behavior if the map border straddles chunks (P.S.: it's in the top right corner of your map if you want to find it.)