I agree (and disagree) with a lot of the comments. At some point, you have to just suck up and deal with the change in plans. Keep in mind, that even though some folks were notified as early as Friday, it is highly possible that the itinerary was not firm until Friday night or Saturday morning. They may have been still working to find a series of ports they could change to in a warmer climate - remember, they have to find MANY ports within a workable distance of each other that are available for them to dock at. (Can you say 'scheduling nightmare?) The Carribbean and Bahamas are very popular destinations, so finding an empty port on any given day may not be as easy as you think. Just because some people were notified does NOT indicate it's a done deal...just someone getting the word out on what they know. BTW, if they 'say' the itinerary will not be changed, it might be a good idea to bring a couple of 'just in case' pieces of clothing so if you are faced with cooler temperatures, you won't be SOL.
I do agree that communication at all levels of the organization need to be working as quickly and efficiently as possible in a situation such as this. I agree that a letter expressing the impact to you as well as pointing out the gap would be a good thing to do. I also recommend providing them with a couple of 'reasonable' solutions. By reasonable, I mean, think in terms of a win-win situation for both parties. In this economy, I'm sure they can't afford to refund everyone or give you $100 back. A drink and/or a sweater shirt might have been a good idea though!
Sorry you had such a crappy experience...