The main reason I think the CPM method works best is that it rewards the better writers (or harder promoters of their own submissions), which generally speaking means you'll get higher quality content submissions to publish, while still offering lesser writers a chance to earn something as they build their skills.
Of course writers typically prefer an upfront payment for their work, but they often don't see how short sighted they're being in thinking that way.
So let's say Site "A" offers you $10 for your article upfront, that may be "decent" to you (many people write for far less at DP), but if Site "B" is offering $3 per 1000 page views for the life time of your article, then the potential earnings from that same article are much greater with Site "B". For a real life example, I've just checked one article on our site that pays authors and it's had over 24,000 views since July '08 - the article is just over 330 words. At a $3 CPM rate, that means this article could have earned $10 with Site "A" or over $72 and counting with Site "B"...
In my opinion, paying upfront is going to attract the lower quality writers who aren't capable or confident in their writing to earn from a performance based payout system.
On the other hand, if you pay for performance over the lifetime of articles you have to understand that means you could end up paying hundreds of dollars for individual articles. You should be paying out less CPM than you're earning, and if so this isn't a problem, but it's something to keep in mind.
Hope some of this is helpful.