You always create a branch for the release (subversion doesn't make any distinction between a tag and a branch anyhow, so you might as well just make a branch).
I don't think the tag should be edited (there are a few that were, and that's unfortunate already). For example, conversion to bzr will conclude it's a bazaar branch, not a tag.
Any by "copy" you mean "merge", right? Presumably someone is cutting a release because we believe it's done, and thus the likelihood of needing to make changes is very very low. If you indeed have the extraordinary circumstance where you have to modify the release after you make the branch, just make the change on the branch, cut the release, and merge that change back into the main line.
It's standard procedure to change the code after declaring it releasable; during the release process, the version numbers get adjusted throughout, and those changes get committed before the release tag is made.
Version control systems are built to avoid precisely the situation which is being discussed here - we should take advantage of that.
I would leave that up to the release manager.