The blogosphere really needs a lot more discussion on how to do TDD, because in my experience, working in a team that valued TDD and wanted to do it, most people did not do TDD most of the time. The reason is simple. Most people don't know how to do TDD and therefore are not comfortable with it under a real workload. There likely is no simple solution to this. We just need to talk about it more, share ideas, tutorials, etc.
Also, I think that part of the reason TDD is not used more, is that TDD is intimately intertwined with design and in today's "churning out code" culture, taking time to design things is no longer valued as much as it was.