I also think it's annoying that he's been saying all along that he was going to race and fans bought tickets expecting him to be there.
He could have said weeks ago when he had medical issues that he wasn't going to race, he could have at least said last week that he wasn't, but he waits until after the Opening Ceremony to make the call?
Maybe things weren't going great and he wanted to wait until the last minute to see if they turned around, but you certainly wouldn't have known that from his interviews before now.
Look at this Facebook post from July 16th:
https://www.facebook.com/permalink.php?story_fbid=10152531746219710&id=260571864709
His management team said: "Mo Farah is healthy, back in full training and looking forward to the Commonwealth Games in Glasgow."
Farah himself wrote: "In Font Romeu... Trainings going good!! next stop..... commonwealth Games...!! Shabba"
So what's happened in the last week that is so drastically different he's had to pull out? Clearly he's in good enough shape to race if training was going "good" as he says. Maybe not 100% London double gold shape, but clearly good enough.