On our first cruise the dress code caught us by surprise and to be honest I was just acceptable at the formal night with a tie and dark pants. Of course my wife had a dress that looked great, but then she makes a potato sack look great.
As a retired military officer I have my dress mess uniform (It is the military answer to a tux) and that is what the little lady said was my appropriate dress for formal nights thereafter. To be honest, it is fun to wear the dress mess uniform. Often get mistaken for the ship's captain but it is amazing the number of dinner conversations generated with guys about their previous military service.
Where I fall in the debate on formal wear though is, if you feel comfortable in a shirt and tie then have at it. If you like the look and feel of a tux then by all means wear it. Let's not get all wrapped up in what to wear, rather lets have a great cruise, good table conversation, and meet some great people.