Apple's answer to this problem is "buy Aperture". Since I'm testing Aperture 2.0 prior to purchase I tried merging two libraries "by reference":
... When importing pictures, Aperture can copy images into its library, thus creating duplicates of each picture, or it can reference, or point to, the existing files in your iPhoto Library folder. Although you’ll save disk space by referencing your iPhoto files, you’ll lose out on a key advantage of using Aperture: its Vault feature won’t back up referenced files (see “Why Move to Aperture?”).
If you’d like to try out Aperture but aren’t ready to import your images into the program, consider using referenced files as a trial run. When you import images from iPhoto, go to the Store Files pop-up menu in Aperture’s Import pane and select In Their Current Location. If you later decide that you want to use Aperture as your main photo-management tool, you can import the original files from iPhoto by selecting File: Consolidate Masters....I imported two iPhoto Libraries into a single Aperture Library this way. Each became a project.
The first thing I checked was whether the image counts matched up. There were 2071 + 1772 = 3843 images in my two imported Libraries; but this is the count of "current" images. It doesn't count the originals of any edited images.
Aperture imports an original and "current' image as a stack, so each image is counted. I typed opt-; to collapse all stacks and, happily, my image count then matched the iPhoto total.
So that was nice! Those Libraries didn't have Videos however, and we know Aperture can't handle video files. So we'll see how that goes.
The images keep their titles, comments, ratings and keywords. Smart albums (annoyingly) become "dumb" albums. Much worse -- comments on Rolls, Albums (Collections) and Events are completely lost. Aperture can't handle metadata at that level.
Slideshows and photo books, as well as videos, can't make the move either.
That's a lot of lost metadata...
Update 2/17/2008: I added a third iPhoto Library of 8,000 items, again by reference. This killed Aperture. I got an endless SPOD (spinning pizza of death) when I tried to browse the complete image collection. I had to kill Aperture.