If the system had trouble with SYSTEM.NEW then the ntuser.dat wouldn't be replaced either.
Here is how the program works.
1. It saves each registry hive to a new file and adds .NEW to those files. (it does this on Step 1)
2. When you click step 2, it tells windows to start using the .New file and to rename the current ones to .OLD
3. So at reboot only the .OLD files should be left. In order to replace the ntuser.dat I have to use the pending rename operations. Which has to be loaded in the system hive. So since the system hive didnt get restored to the new file the ntuser one didnt either.
So the question is why didnt the system.new take?
I dont have any error reporting in the program, I may need to add some.
Go ahead and delete the .new and .old files and try again and let me know how it goes.
Shane