To be honest where I come from a shop closing at 8pm is early.
True, the smallest ones are open between 8am and 7pm, but they're loosing market share in favor of mini-markets, which are usually open from 7am to 9-10pm.
And if that's not enough there are liquor stores and petrol stations, both of which are usually open 24/7.
Siesta is just a fun word to say, and all the gringos know what it means, and it sounds like a lovely way to spend a day, so that's probably why the myth is perpetuated over and over. It's just a fun conversational nugget, coupled with a bit of cultural ignorance!
It's a shame that so many Brits visit Spain yet remain culturally ignorant to some things there. I think in connection to believing that Spaniards have siestas every day for hours we also casually imply that Spaniards are lazy in every regard by repeating the "mañana" quip.
Nowadays this 3 hours break mainly affect the small shops instead of offices/big companies.
And, being honest, was quite useful since shops closing at 8 pm allow people doing their shopping chores when leaving the office/school/uni...
Edit: My English... U_U'