I had something very similar last December (which I ranted about a few times on here

). I had to pay 240 Euros to get back to MAN when an IAH-LHR flight was diverted to DUB due to bad weather at LHR. We were left to fend for ourselves.
BA completely washed their hands of the issues, and pointed me to my insurance. The insurers did pay out, but made it clear that they were doing it because I was a long standing customer rather than any legal requirement.
Hope you get a better outcome...
Cheers,
Rick