There's a January 1st requirement and a January 23rd requirement.
Originally, the passport requirement was to go into effect for anyone re-entering the US after December 31, 2006 (ie Jan 1). That was then changed to Jan 7 (or 8?), and land crossings/cruise passengers were exempted. The date was changed to Jan 23 when the DHS missed a deadline (something about a 60 day rule). Anyway, as it stands now, anyone entering the US by air as of Jan 23 must have a passport.
However, for cruise passengers thinking they don't need to get a passport think about this - what happens if you have an emergency and need to return by air? Land passengers the same. I can't even imagine the potential hassles.
Bottom line is, just go get a passport and you're covered under any and all circumstances.