Look, the problem with the ending isn't that there isn't a happy ending. A story where the galaxy goes into a war engulfing everything, where every homeworld has fallen, where most of your mates are dead, and where it seems all hope is lost, should really not get a ending happier than bittersweet (Shepard dies, but heroically, and making the ultimate sacrifice; or Shepard lives, but pretty much everyone else dies, and leaves a loss that is keenly felt).
I've said this before, but I'll say it again, the ending is problematic because, having built up all that emotion during the game, and from previous games, there is no release of that emotion. At the end, you're left feeling lost rather than any sense of overwhelming sadness, overwhelming relief, or overwhelming pride. There is no cathartic event for the audience to release all that built-up emotion.
The other problem, and I'm sure this has probably been mentioned before, is that there is a disconnect between what you've been fighting as Shepard, and what the endgame becomes. You spend almost 100 hours every Shepard fighting against galaxy-wide destruction brought in by the Reapers, and at the end, you're dropped the information that it wasn't really about the Reapers, but about the relationship between synthetics and organics (which if I'm honest, is a neat idea to explore, particularly in the form which ME seemed to want to explore, but never did). And now you have to make a choice that you are entirely uninformed and unprepared to make. And I turned everyone green. I don't mind turning everyone green, and I don't mind dying to turn everyone green, but at least tell me why I should turn everyone green.
It just felt a random choice to be making at the end, and a confusing choice above all.