In short: Migrations used to suck, we've made them substantially more robust over time. Something from that long ago didn't have all the data carried along with it, that's since been resolved.
A while ago several of us pretty much completely re-wrote how migrations work. It used to be a cross-database Linq2SQL affair which resulted in the wrong user having their rep updated in an edge case.
When we finally found that bug (no kidding: logging every rep change for a few builds, that one was crazy) we said screw it and re-wrote the thing as an API call. What happens now is we serialize everything that's needed into one protobuf object and make an API call to the destination site. That site then handles all the inserting/creation that's needed for the question, returning the new URL for the old site to point to.
While not specific to this bug, that re-write, by nature, fixed lots of issues like this. I just confirmed locally a user name would appear in this case if the migration happened today.