Call carnival, on occasion they have rooms available that are longer on the website especially close to sailing dates.
Alternatively try another port or cruise line, last minute Xmas cruises are expensive but I'm sure there are some available. A quick search shows RCL and carnival both have space on ships on the 23rd and 24th.
11 cruises in 2012, 90 nights at sea visiting 15 countries
8 cruises in 2013, 56 nights at sea visiting 7 countries
Next cruise: None scheduled
PM me if you need a cruisemate for any Europe, transatlantic, or Panama Canal cruises
Date, ship, cost pp