We have done both and loved both, with boys of similar ages and age gaps thru the years, so you will love either choice!
Things we had to think about:
--Days off from school. We usually sail the December-ish time of year and have to keep in mind missing days from school (& work).
--Homework and projects due. We are usually doing homework in Cabanas one day.
--Traffic around the holidays (since you are planning Dec). We drive from PA so that is always a factor.
--If you're flying, airline tickets for that time of year.
--They are young enough not to notice the difference from 1 beach to another. So 2 days at CC compared to St. Thomas/Tortola wont make a difference to them.
--Even though the 2 extra sea days are great at around 5 total cruise days our boys got skittish and eager to get back home. As they got older this changed, but the shorter trip was better for their psyche when they were younger.
--Taking a cruise during December shortens the Christmas time at home. We find that over the past 8+ years of Merrytime cruises that the Christmas season seems very short. You spend time preparing for a (great) cruise, you're on the cruise, then the euphoria when you return. That could cut into you normal family visits, Christmas shopping, Christmas preparation. So a shorter cruise may not make such a dent in the "at home" Christmas experience. Though maybe you want to miss out on some family holiday experiences! (We have used the cruise as an excuse to miss Thanksgiving for several years!)
For us, as a family, just getting away is worth the cruise, regardless of destination or length of cruise. The ports, though also great, aren't the highlight of the cruise. Our first cruise was one CC on a 4 day Dream cruise. And we were so enamored from it that we have been coming back ever since.
Again either choice will be the correct decision. Please return and tell us how your cruise turns out, with pictures!