Obviously the AI puts junk cities out there; I didn't suggest that you puppet every city Augustus shat onto a one-tile island in the ocean just because it had 2 iron. But the 2nd or 3rd city that most AIs found will still yield enough to make the happiness hit worth it, and capitals are usually good enough to be worth keeping, and far enough from your own cities that it would be handy to have them produce units, so I'll annex them.
I just think that the existence of luxuries, unique or not, is the wrong criteria to judge by. If the AI built a Coliseum in the city at any point, the net happiness is the same as if it had a unique luxury, then Circuses, Theatres and Stadiums just count on top of that, plus anything they might have that will give happiness once absorbed into your empire. Whatever the situation is, it's all baked into the tooltip that tells you how much your happiness will change for each option.
Better to puppet/annex based on wonders (natural or world), positioning, buildings and yield.