I'm not clear who's doing what to cause this, but I'd guess it's the "magic guessing" regarding where the root of each branch is. Svn has to guess based on things like what dir you run the merge from, because the root of a branch is in no way special. At least, thats my current understanding.
Would it be possible to either explain how to use the new feature without it being so fragile, or alternatively to add a "svn:branchroot" property to mark branch/trunk roots, so they can be found automatically? this could even be set automagically by "svn copy --branch". Just a thought.
It seems to me like the new commands depend on having a "branch" be a special, well defined thing, and the current structure offers no oportunity to define what you see as a "branch".