Why is it that when I set the APN to the modem using the +CGDCONT command, then do an ATZ or recycle power on the modem, it is lost?

The EDGE modem does not store this setting. The best option is to set this command string as an initialization command in your application. If you are using a Windows dial-up connection, add this command into the "Extra Initialization" setting in the modem’s properties.