You can now throw together a photo-hosting and viewing application in a couple of days. But that doesn't necessarily yield a site that runs itself. Teaching the customer to use the code still takes about the same amount of time. Editing the theme over and over again, iterating a design cycle that incorporates emails and meetings between you and the customer and the designer, still takes about the same amount of time. The process of moderating the uploaded photos to screen out the spam and porn still takes about the same amount of time. Usability testing still takes the same amount of time.
(And even in the enlightened year of 2012 there are still standard things that all sites could use, like proper reverse-proxy caching and solid backups, that over half the Wordpress blogs on earth seem to be lacking. Apparently we're not even done automating the things that could be automated.)
The other problem is that if the customer steps off the well-worn path they will fall into a very deep pit lined with invoices. If Wordpress does it out of the box, it's cheap. If Wordpress almost does it out of the box but it requires even the smallest amount of custom coding, it's expensive. And knowing what things are expensive and what are standard requires skills that customers don't have, so they have to pay a programmer to advise them, and that is itself inefficient and expensive...