I work daily with PrestaShop. I think that it's the perfect solution for an average project. If you need something extremely fancy (but also extremely difficult to configure/use) you should go for Magento. I'm a programmer and I've had difficulties setting it up like I wanted. The learning curve is too steep. Of course it brings other advantages, but the project has to be big enough to make up for the time lost in learning to use the the platform.
The thing I like the most about PrestaShop it's the ease of use (for both the developer and the shop admin). Its modular system completely demolishes osCommerce. Everytime I have to work on an osCommerce shop, I cringe. It's outdated and it's not a good option, by any means. If you need to change the layout of the store, you just drag modules around in the Back Office. There's no cutting and pasting code in PHP files. The same for installing new modules.
In my opinion, PrestaShop is mature enough at this point. There are hundreds of modules you can use to customize it to your liking (just do a google search or try their forum). The template system is also top-notch and easy to use. Take a look at what you can do: http://www.templatemonster.com/prestashop-themes.php
I also messed around with VirtueMart. It's not a bad solution if you want to integrate your shop with a CMS (Joomla). There's also TomatoCart, a new-comer (they still don't have documentation for developers) that's based on osCommerce 3 alpha, but from what I've seen it's a major improvement. The Back Office is amazing.
Summing it up, I think PrestaShop is excellent if you need something that's easy to use, easy to configure and flexible. Magento is better for LARGE projects because there's a lot of overhead. If you are planning on configuring more stores in the future, the time lost learning Magento might be acceptable.