Under the EU reg. and the equivalent in the UK the liability rests with the operating carrier regardless who issued the ticket and if codeshare. You need to claim reimbursement of hotel, meals etc from BA; the same with comp. for cancellation of BA281.