Maybe the companies you've worked for sucked. I always book 40 hour weeks, because I can't be bothered to keep exact record of when I arrived at work, when I left for lunch, when I returned from lunch, and when I went home. Most of the time during normal operation I work less, closer to 7h than 8h days. But when necessity demands it, I've worked 12h days for weeks, and still only booked 40h at the end of the week. The important thing to me is getting the job done, and I consider the money I receive by booking 40h the cost to have me do that, whether it actually takes more or less time is irrelevant.
On average, I think I work less than the 40h weeks I always book. But I do my job well, I have a reputation, and nobody questions me.
I think it's more honest. I want to be payed for the quality of my work and not for the time I hang around in an office. It would be easy to hang around until the hours sum up, but I would be wasting my time and fooling my employer into thinking I'm actually doing something during that time. Sometimes I've completed the task for the day in 6 hours of concentrated work, and I'm not in the mood or mind to start something new. I pack my things and leave.
Nobody has ever raised an issue with my work hours so far, probably because I'm very good at what I do. And if somebody ever did, I'd probably get a new job. I don't want to compromise on how I do my job, and if I go, it's mostly their loss, not mine.