Testing is not something you just assume, and in most organizations it is preferred (if not mandated) to have all servers on the same level.
Even in a small environment, you usually load and test on a separate machine.
If you kept up with every CU, and tested thoroughly, some places would be in a constant state of upgrade.
Dev, QA, Prod - with a week in each, you get the picture.
It takes out a big variable if you have to move things from one server to another.
I can see where having CU's available - you have more visibility of some fixes you might be more interested in, gives you a choice.
It is better than hotfixes.
I think Service Packs still have a place.
If nothing else, designating a CU as a SP might make it easier to pick a spot to upgrade when you have multiple servers.
And certainly makes checking and knowing exactly what level those servers are at much simpler.
The more of the complete stack you leverage, the more it may matter.
Just using SQL is vastly different than when you add SSAS, SSRS, SharePoint, Tabular, etc. into the mix.
Much more testing and validation needs to occur.
So I like the flexibility CU's can give, but think SP's can make managing easier.
Bigger stake in the ground for those who may be looking for that.