The complication is that you've got apache virtual hosting in there as well. With virtual hosting, one IP address is used for multiple hostnames and the "host" header is used by the webserver (apache in our case) to distinguish between the different sites.
What this means to you is that even if you managed to get all three of your domains to resolve to the same IP address through CNAME entries, user browsers would still send three different "host" headers and you'd have three hostnames to deal with on the web hosting side.
For you, this means that you should just go with one of the following two solutions:
1. Use domain forwarding to forward everyone to one domain. Using this method, everyone will end up with the same url (the .com one for example).
2. Use DreamHost domain mirroring to mirror one of the domains to the other two. Using this method your users would preserve the original domain they typed in.
Unless you have some special reason for doing so, I'd recommend method #1 and just use domain forwarding to forward everyone to your one "main" domain. This is what most people do.
Free unique IP and $67 off with code [color=#CC0000]LMIP67[/color] or use [color=#CC0000]LM97[/color] for $97 off. Click for more promo code discounts