Finally found the problem - in the bowels of Amadeus, we were ticketed on BA116 rather than BA172, and 116 doesn't run on Saturday 3rd, hence the MMB glitches with seat selection.
A quick call to BA later (basically sounding like I knew what I was talking about with PNRs, Amadeus, routings and ticket numbers), and we have a new set of tickets for the return leg, MMB is showing the seat map, and MyFlights is now in sync and happy.
Still unsure exactly how we got in that situation or what would have happened at JFK when we turned up to check in, but all sorted now.
Thanks for all your help everyone, FT rocks!