We took our family on a Christmas cruise in 2008 to the Caribbean out of Miami. The events and decorations on the ship were nice but it just didn't feel like Christmas. The first surprise was, our kids (13 & 18) were two of a handful of of other teens on the ship which meant they had little to do but argue with each other, thankfully we had gotten a separate room for them. Now before you think the trip was terrible or that we didn't enjoy ourselves, how could we not enjoy? We left a foot of snow behind for sunny skies, the ocean and Caribbean islands.
The highlight of the trip was Christmas day, we were in Saint Martin on the Dutch side. We spent the day on the beach, doing nothing. That was a first for us. A normal port of call for us is filled with lines, busses, crowds and very little time to do something we might never be able to do again. To sit on the beach and just relax was heavenly and perfect. However it wasn't like we had a choice, there were no side tours available, most stores were closed and the beach was crowded, but the Christmas Spirit was in abundance regardless, it was peaceful and quiet despite the crowds of people.
We have never gone again for Christmas and I don't know that we would, it just didn't work for us. One fun thing that happened was during debarkation, the lines for Customs were non existent for US citizens, we breezed right thru the checkpoint while there were huge lines for everyone else.