I just recently went back on Halo 4 on my Xbox one (NOT MC Collection) and decided to play the campaign on legendary for the first time to get the Master Chief armor and Legendary visor. I played through the campaign and after many hours spent to get that armor and visor I never got them after completing Midnight. On my Waypoint it says I don’t have the last 3 missions completed on legendary but on my campaign list it says highest difficulty completed on every single mission is legendary. I also got all the achievements for beating every mission on legendary. I was connected to Xbox Live the whole time. Not sure why it says I don’t have those missions completed…
I would double check your commendations for campaign, as those are what unlocks the armor. So once all the commendations are complete for legendary (including the two levels in which you don’t play eg. The first and last) then you should get the armor.