If you go to Canada or Mexico, do not surrender your I-94 card. When you come back from these two countries, just show the immigration officer your Canadian passport and your H1B paper.
When you go to other countries, you must surrender your I-94 card before leaving and get a new I-94 card when you come back.
In either case, you do not need to get a new H1B. Neither do you need a re-entry permit in advance.
This is just my personal experience. I am not a immigration lawyer.