It's definitely not offside.
Did Bernardo foul Sa in the split second whilst the ball was in play, before Stones headed the ball? Probably not. He may have impeded him slightly, but also, Sa pushed Bernardo, so it's six of one, half a dozen of the other. Plus in the light of Arsenal's regular tactics, Bernardo can't be penalised due to precedent. So no foul. Therefore it's a goal.
The thing that gets me is when was the onfield decision arrived at that the goal shouldn't stand. The linesman didn't raise his flag for at least four seconds after the goal was scored. (He went out of shot after four seconds on the only footage I've seen). If he truly thought there was an active offside, he would have flagged instinctively, and immediately. It smacks of a collaborative decision - or an instruction.
That decision was easily and correctly overturned, but it's far more common to go with the onfield decision, saying "there wasn't enough in it".
To me, it seems they gave themselves the best opportunity to disallow the goal.
As for O'Neill saying Manchester City receive favourable decisions, he surely must realise the ridiculousness of that comment. We are hated by the PL, PGMOL, most clubs and their fans, broadcasters, all other media and anyone else I may not have mentioned.