Just my opinion..........If departure time is 4:00 I would not do it. It is possible to make it if everything went perfectly but when does that ever happen? Not worth the chance of missing the cruise to save a few bucks on airfare.
The sole reason we cancelled out cruise air for our Conquest cruise was because they wanted to fly us in the day of the cruise. A few weeks ago Toronto was hit with a massive winter storm that cancelled 150+ flights. The flight we would have been on was cancelled. If that was the day we were leaving for our cruise we would have missed the ship. I figure if the plane landed in Houston as late as 12pm we would miss the 3pm cut off because of how long it takes to get your bags and wait for everyone to be ready to leave.
We booked a flight the day before with shorter flying time and a hotel on the gulf coast. We'll head to the port at noon and be on the ship by 12:30 eating lunch until our cabin in ready!!!
Winter is nothing to mess with when you consider a winter storm can close an airport so fast it isn't funny!!!! Look at what happened in Denver in early 2007.
2007 Victory & Triumph
2008 Conquest & Liberty
2009 Valor, Freedom, and Splendor
2010 Glory and Liberty
Like all PPs, I wouldn't take the risk. A friend of mine went on a cruise a few weeks ago... his flight was scheduled for 10:30am but because of the weather, his flight was cancelled!!! They had to wait for another flight, and didn't arrive in Tampa until 5pm. The ship set sail at 4pm. They had to get a hotel room and stay in Tampa until they could get a flight to Grand Caymen to play catch-up with the ship. Set him back $1000/person, and he didn't have travel insurance. Since there were 12 of them in the party, it was quite a financial set-back! If you can get an earlier flight or one the day before, I recommend booking it instead.