It also requires that everyone have the same vision, or you end up with a very fragmented product, see as how you allow each developer to decide what to work on.
Don't get me wrong, I would love to work at a company that is succeeding at this... I just can't imagine how to keep it succeeding.
Seeing as how it requires the developers to act like they have a stake in the company, perhaps a better title would have been: Driven Developer-Driven Development