Well there is a way to transfer registration from another system to Steam - because other games have done it. In fact the Indie Bundle sales do it all the time.
If Stardock provided a web page where users could enter their existing registration number (or sign into impulse etc), and they are given a Steam code that is then entered and activated from within Steam. Lots of games use this mechanism to allow users to add Steam titles to their library without having to go via a separate purchase at the Steam Store.
I'd suggest the real reason why "there is no way to transfer your registration" is the alternative would require a little bit of extra work on the part of Stardock, and then there would be all those lost sales from requiring gamers to purchase the game a second time, so it can be launched from a different icon.
Why provide something convenient to reward your loyal existing customers when you could require them re-purchase the same program?
Steam already has the mechanism in place to support the activation of licenses for existing users - all it would take is for Stardock to make arrangements for it to happen.