From my perspective I think annexation is in game almost always wrong move.
In vanilla, I'd strenuously disagree. Puppets are next-to-pointless; your supply state fighting beyond a puppet is going to be parlous. Whatever fraction of the IC/leadership/resources you get by annexing them will be 1000 times more useful in your hands than in the hands of the AI.
Later expansions improve this state, I gather, but I can't comment on how much.
Often, though, you don't get the option of occupation. You may get lucky and have the old Govt go GiE, and that is surely the best of both worlds (which is a bit silly, if you ask me) but it's not generally something you can choose to happen (without save-and-reload shennanigans). If you get a choice it's between Puppet and Annex, usually.Occupation is much better, its also more flexible because you can,by changing occupation policy, squeeze occupied land as you like(more squeezing,more unrest of course).