I've been looking at new cars recently, and have to say that there's no way I would consider buying a BMW, or pretty much any car that isn't Japanese. The two- and three-year old used 3-series and Mercedes that I looked at seemed totally ragged, next to the condition of a used Lexus or even a Mazda.
I could spend $40k on a 3-series, or half of that on a used Lexus, or a quarter of that on a used Mazda 3.
What you say is pretty much true, except I think you're a bit harsh on the BMWs - maybe you just saw some bad examples? But societal pressure for visible evidence of success being what it is, it doesn't really matter how good the Mazda 3 is - people will pay for the BMW. And to be fair, BMWs are really good cars. There's a premium but it's not a total rip-off.
Ask a girl sometime whether she'd rather date a man who drives a BMW, or a Mazda 3. That's all the information you need right there.