Leave the iTunes folder where it is, or symlink it from there. It's relatively small compared to the actual music data, but iTunes really wants to find it in the default location.
The simplest way to do this would actually be to change the library location then let iTunes organise it for you… however, if you don't do that you will have to change one file, then Import it. iTunes will not simply find your changed file & say to itself, 'hmm, I see, they're all here now.'
Your premise is almost correct, however, you don't export the XML, you change the existing one.
If you've already moved the main ~/Music/iTunes folder structure put it back (or Symlink it) & check all is still OK in iTunes.
Quit iTunes.
Copy the iTunes Library.xml & .itl files to the desktop for safety.
Delete the ITL still in the iTunes folder. iTunes will rebuild this itself at the last step.
Open the XML in BBEdit or similar.Change the paths, as you were doing - you already noticed that these are, rather irritatingly, absolute paths not relative.
Now - this is the important bit that none of the 'moving my iTunes Library' guides tell you. They mostly tell you to Import this new XML from the Import menu - I've done it, it can take 12 hours & you lose some data.Now - this is the important bit that none of the 'moving my iTunes Library' guides tell you. They mostly tell you to Import this new XML from the Import menu - I've done it, it can take 12 hours & you lose some data.
Save your modified XML file back into the iTunes Music folder.
We now need to make a new broken ITL file.Open Terminal & enter this
touch ~/Music/iTunes/iTunes\ Library.itl
That will create an empty ITL file, broken enough for this.Launch iTunes. It will now notice something is 'wrong' & start rebuilding the ITL file, using your newly-modified XML file. The message is 'Importing ‘iTunes Music Library.xml’ This will take some time, but more like 15 minutes than 8 hours.
You may find some album artwork missing - it never seems to be a truly perfect solution, but your play counts, playlists etc should all survive intact.