BCSE has a mod that allows image upload and attaching it to a product:
https://bcsengineering.com/store/x-cart-order_product-image-attacher.html
I had a client that used this, but it wasn't enough. They wanted to be able to allow the customer to control the placement of the logo on a T-shirt. Ended up haveing to build a custom solution that made heavy use of jQuery UI.