This is similar to the way I've done it in the past. Your solution actually copies each file, then deletes the original. Because of the way Subversion implements copies, the history for every file is preserved.
After doing this, you can point existing checkouts at the new location using svn switch.