I don't blame you for being upset about the itinerary change. If I were Carnival I would offer more than $25. But as I must always point out, a cruise is always sold as a cruise with NO guarantee the ports offered will be delivered. I am not defending or being an apologist, just telling you what the cruise contract says.
Carnival announced a long time ago that cruises that leave on or after December 17th qualify for a fuel surcharge refund as an onboard credit. Yours left the 15th so you didn't qualify. Sorry, but the line had to make a cutoff date and it was Dec 17th. As for the shortened itinerary using less fuel, it is an interesting point, but a moot one, kind of like saying if you traveled with a group of vegetarians you expect a beef and lobster rebate.
At this point it is a disappointment to you, understandably and you are doing the right thing by making it public. If Carnival did it solely to save money then they deserve all the bad publicity you can muster. But unless there really was a problem I don't think they would be taking the ship out of service for 3 weeks.
Carnival does offer a cruise guarantee that says you can get off the cruise in the first port and they will refund your money and pay your airfare...
If you are not completely satisfied with your cruise vacation experience, all you need to do is notify us before arrival at the first port of call and you must debark at your ship's first non-U.S. port of call. Carnival will refund the unused portion of your cruise fare and pay your flight back.*
I know none of this makes you feel better about your cruise, and we appreciate you bringing it to our attention. As i said, if I were Carnival I would have offered more onboard credit - but that is their discretionary choice, no one elses.
YOU have the right to complain which you did, but at this point I wouldn't expect Carnival to do any more than they did - I am just sorry things did not turn out better for your cruise.