some other things you might look into [1st, spend some time on flyer talk, checking cc's, cruises,etc]....
some airlines offer cruise packeges which earn mi's [aa,ua i know], but check prices closely....
consider taking the cruise line air , if the price is ok, because if there is a blip in the flights, they are obligated to get you to the ship's next port if you miss the boat...
have a great time....happy new year.