Did you show your I-797 H1-B approval notice?
I think that you must have shown it to that idiot. Just to confirm.
If you did, it is hard to believe that they could not accept it. There are so many people who adjusted their status within the U.S. (without the actual visa stamp on the passport), and they always reject those who want to get on a cruiseship?