I don't mind making themes. It has a lot of "wow, I just did that without having to delve into the darkest depths of programming" factor to it.
When I started working with database-driven websites at university, I struggled to get my head around the whole thing. At that time WordPress has just bene launched and being used as a blogging template. Alas, I wouldn't have been allowed to use that or an equivalent anyway because my lecturers insisted we code everything! from scratch Admittedly, putting code into practice is the best way to learn it. It's how I teach my students and it works ... most of the the time!
I'm more confident with PHP/MySQL these days, but I wouldn't dream of trying to build and utilise a CMS I'd built myself. I understand how it works (with the help of one of Kevin Yank's books) and could probably do it if I put my mind to it, but time is my biggest constraint at the moment. I work full time as a lecturer and do the freelance stuff, so I have to fit having a life in their somewhere. WordPress makes it so much easier for me to create dynamic websites, which is why I use it. I recommend it to a lot of people I speak to - students and clients alike, so I guess word of mouth has a lot of sway in making WordPress so popular.