Jason, you rock!
I knew this used to work, so I couldn't figure out what happened. Your script showed that the security group ID was 0. I don't even have a zero! But sure enough, back in the database it was set to zero. hmmm.
I tracked it down to a page where they can update their registration info. Even though they did not have access to the user GroupID field, it was setting it to 0 in the database whenever they updated their info.
All better now - thanks too for catching the menu duplication.
WebAssist software is great, but it doesn't stop dumb user errors. Thanks so much for the great support!