[eluser]ashleyA[/eluser]
I am also experiencing similar email activation problem, what I came to find was, when the PHP Version you are running in your server has the 'Thread Safety enabled' then it works as it should, if it is disabled then I am experiencing email activation problems, such as, When you click on the activation link in your email it would complain saying "We are sorry, but your activation has failed. Contact the site administrator for assistance."
Some how the process moves the user from user_temp table to user table but it gives activation failed message. My guess is, without thread safety enabled multiple threads work on your request, so one thread races the other thread and moves the new user from the user_temp table to the user table and the other checks the user_temp table and doesn't find the user in it and complains saying activation failed.
-Ash