In my experience, if you just pitch up at the airport and try your luck, you stand way more chance than if you call a contact centre. Especially BA's contact centre, which seems to be less and less flexible and more and more sticking to the rules these days.
There is something about being stood face-to-face with the person who can solve your problem, and probably someone who has got a little more experience of problem-solving. If you can't get your way, and if you are good at acting (try thinking of something really sad), then I've found that crying always works. Standing in front of the check-in counter and having a good blub pretty much guarantees to get the agent on your side. Obviously only to be used if all else fails!!