The problem with your script, though is that you have to manually update it, like you did with aero, museum, xxx, etc. A much better, albeit slightly more expensive solution, is to get the domain and see if it actually exists and has an mx record, because as this shows, there are times when that regex falls apart.
bill.smith@gmail dave@aol bob
You can only help them if you give them feedback immediately. If you let them register with a broken email address, they're hosed.