Magento is the defacto open source ecommerce solution right now, and it's used by a lot of large sites. Aside from being one of the most robust e-commerce solutions on the market, its modular design (built on ZF) and plugin system (and large library of free and commercial plugins) means that you can do almost anything with it.
I'm not sure what is needed to handle odd-shaped products, but if the integrated shipping calculator can't handle it by default, you can always write a plugin (or hire a developer to write one) that can fix that.
The only problem with Magento is that, because it's such a robust application, it takes some time to learn the ins and outs of customizing and programming for it. The lack of decent documentation is also a major drawback, and the support forums are mostly filled with clueless webmasters looking for help or commercial developers just there to advertise their services.
But for most businesses, Magento is more than capable of meeting their needs without customization. And there are also plugins for most commonly sought features not included in the community version.
Oh, and I would recommend using separate solutions for e-commerce and for content management. Specialized software is always going to be better and more robust than a CMS plugin or an application that tries to fill 2 completely unrelated needs. There's really no advantage to combining your store and general content. If you want to integrate your store with your site, you can easily do that with Magento's SOAP API.