You have indeed identified a limitation of our migrations implementation. It works well for a single branch, but it falls short when generating deployments cross-branch.
We used to simply not pull in migration scripts if the branches weren't the same, which is why we store the branch url in the .migrationscript file. In the latest version of SQL Compare, however, we've relaxed that requirement as it will allow deployments to work in some cases. However, because we don't know the correct order to use as revisions numbers are only linear within a branch, there's certainly no guarantee that it will work.
We're hoping to tackle this problem soon and hopefully come up with a workable solution.