Well, IMO, the whole system if tipping in the US and a few other countries is "broken." In restaurants, bars, hotels, and resorts on land (as well as on most cruise lines), tipping has become a system whereby the owners get us customers to pay most of the wages for the service personnel.
That being said, I do not believe the way to correct the system is to penalize the true victims of the system, who are the service personnel themselves! Cruise lines on which tipping is customary (which includes most of them) are very "up front" as to the fact that tipping is expected, and even state an average amount. So tipping is not an "undisclosed rip-off" like the high price of drinks on some lines --- but the latter is the subject for another thread. Rather, tipping is a well disclosed and known part of the price of the cruise. I can calculate it and plan for it before I book, and I do this.
A few lines include tips in the fare, and charge a higher fare as a result. I have observed that this is a system that works very well. If you generally cruise a line on which tips are customary and expected and you would rather have them included in a higher fare, write it on your comment card the next time you cruise. If you don't prefer such a change, then just "go with the flow" on tipping.
Of course, none of this means that guests should feel forced to tip the "customary" amount or more for poor service. Fortunately, I've never had that problem. On all lines I've cruised, both cheap and expensive, the service from the crew has been outstanding.