Many years ago I developed my own CMS and used it for my web clients. It was capable of creating new pages and sections, editing content, managing the menus, etc... I thought it was all I would need until I used one of the big open source CMS'. I used Drupal and after the big learning curve I realized what was most important to me:
1) Community driven, meaning that there are literally tens of thousands of people involved in development, testing, refining, documentation, etc... As opposed to my CMS which was pretty good but supported by one guy... Me.
2) Adoption by developers, meaning that if I need to, I can advertise to find a developer who is an expert in the CMS and I'll have a pile of resumes to review... One of my concerns with my CMS was that I didn't want to tie my clients to me because if I won the lottery and decided to shut down or sell my business, who could I find to support them; I currently maintain 40 - 50 active websites, about 30 of which are CMS sites. There are lots of developers who specialize in Drupal, Wordpress, Joomla, EE, etc...
3) Modular with lots of options to add member sections, forums, blogs, event calendars, geolocation tools (GMap, etc...), rich text editing with all the bells and whistles (media, iframe, imagemaps, etc..)... Plus the ability to come up with custom solutions for complex database queries. It seems that as soon as I learn some obscure unique application in the Drupal system, I get a call from a client requesting that exact feature and in some cases it would take an enormous amount of effort to replicate it outside of the CMS.
4) A flexible theming engine so I can take any design and apply it to the CMS. I can't use generic free themes on the sites I build because the websites are very much designed to be synonymous with corporate branding so each website gets its own unique design. This being the case, I need to have a theming engine that I can manipulate to do whatever the art director wants.
5) Security and ease of maintenance. This is a bit obvious but all CMS's need updates and patches so it has to be painless. Drupal sends me an email when a module or the core needs updates. With Drupal 6 I used to have a module called the Plugin Manager that I used to do remote module installation and updates. In Drupal 7 it is built in. You still have to do the core update using FTP, Drush or SSL but it's relatively easy to do once you've done it once or twice.
As far as my clients go, I've had some clients ask for Drupal by name and others are happy for me to choose for them. They all want simplicity on the back end because in the end, the are the ones who manage the sites. The current version of Drupal (D7) is quite user friendly but it still needs a little help to make it just that much easier. I have an installation profile which includes modules to give them access to the file system for uploading and managing their files (images, word docs, pfs, etc...) and WYSIWYG for rich text editing. They of course also have full run of the content and menu systems so if need be they can rearrange the linking structure through a drag-n-drop admin screen.
I would recommend that you make a short list of CMS's you're considering and then look at as many sites as you can that have been built with them to look at how well they adapt to design and the chief functions that you're looking for. I find a lot of websites look like they're Drupal or WordPress or Joomla, etc... but sometimes the developer can make the sites look very unique and if so, then maybe you can too. If you see a site and wonder what it's build with go to www.builtwith.com and find out.