Legally you do not and will not in the near future be required to have a Passport to cruise to Mexico, Canada or the Bahamas as long as you are departing and arriving at the same port.
However, the question you asked was if you need Passports. Many will argue that you do, because if there were an emergency flying home would be a nightmare, as Passports ARE required for flying.