I doubt BT have got their legal/contract facts wrong, if I were the customer in this case I would check and double-check everything, then get someone else to double-check it for me.
Stunts like this could make BT incredibly unpopular. In the case of ~£270, they've got much more to lose than gain.