I just use GPO to set all the user settings with loopback processing enabled. Works during the first logon.
To copy to the default profile in Win7, Sysprep is what I use and the only supported method by MS. You can do this by specifying the Microsoft-Windows-Shell-Setup\CopyProfile parameter in the Unattend.xml. I don't loose any of the user settings when new profile is created.