If I understand you correctly the departure of your flight was initially delayed then canceled, your demand to be put on an earlier flight was denied & BA put you on the next flight once yours was cancelled. I am sure that BA have not caused all of this to happen just to spite you!
An alternative explanation, which I think is perhaps more likely to be correct, is that they had an unforeseeable operational issue that they attempted to resolve as efficiently and fairly as possible. Unfortunately it screwed up your day. Annoying, but probably best to move on, and consider buying a flexible ticket in future if the timing of your travel is important.