Well... sure, I guess. If you familiarize yourself with customization methods provided by your chosen CMS, you can probably theme and customize the CMS to your hearts content.
Alternatively, if you familiarize yourself significantly with the data structures and the database schema, you could just write your own interface to access and update those data structures.
In truth, probably your main problem with the CMSs as is just a lack of familiarity. Especially considering how you've characterized yourself as a "starting/mediocre" programmer, you'd be better served just learning the CMS and learning how to add new stuff on to it.
Don't get me wrong, I don't disagree with your feelings about those CMSs, most of them did not have a strong UX designer (and, in some cases, data architect) involved from the beginning stages and they're suffering for it now. But not suffering so much that most people could appreciably do better. Take the word of someone who has created not just a custom CMS but a custom framework upon which to develop: it's easy to do one thing the best it's ever been done. It's hard to do everything and have it even be passable.