To answer your question the reason BA continues its association with AMEX is because IAG (a Spanish corporation, FYI) has an agreement with AMEX to offer credit card products for IAG airlines.
My experience is that AMERICAN Express is accepted pretty widely. All supermarkets, fuel stations, travel agents hotels and most decent restaurants and virtually all chain restaurants accept it. The main national chains which don't is B&Q. Its hit an miss in pubs and smaller/independent shops- I agree.