I build a few structure in different worlds which I'd now like to put into one single common world. Is there a way do this, preferably without having to manually select which parts of each world are hand-made?
I used MCEdit to do the same task as you. I'm pretty sure block-selection is the only way to do it right now, and in most cases you really have to deal with the terrain anyway if you are like me. I built a castle into a desert mountain, and that was hell to move, but I needed the terrain or else it wouldn't make sense.
One thing you might try as I did is to cut the chunk(s) the building onto MCEdit's clipboard, create a new empty world, paste the clipboard, erase the extra terrain blocks around the building, and then paste the result into new location (with air blocks ignored of course).
Finding the diff between a generated world and what you've built wouldn't be that hard ... sounds like an excellent project :)