OK I figured it out by using the source code and a debugger. In retrospect is sounds obvious 
DNN has a "User Registration" setting with 4 options. You must have it set to Public for Dynamic Registration to log the user in after registration. If you think about it this makes sense since the other options "Private" and "Varified" require another action before the user is ready to use the site. Dynamic Registration people, would it have killed you to include this tidbit in the documentation?
In my case this became an issue since we started out the site wanting to use Varified registration and changed our minds later.
You can find this setting under:
Admin -> Site Settings -> Advanced Settings -> Security Settings
Hope this helps someone.
Thanks
Zeev
<!--Session data-->