I'd, personally, rather use ExpressionEngine if I'm paying for a CMS. Much better scalability, customization, ease-fo-use, and support. This is mainly for professional websites where I'd not want to develop my own CMS or scripts.
Other than that, I'd use WP for the same reasons stmadeveloper mentioned. Especially for cheap affiliate sites that need a blog.
For everything else - code it by hand.