I am surprised no one has mention OSCommerce. It's by far one of the most detailed and well laid out commerce application I have worked with.
I agree with the "don't reinvent the wheel" approach. The biggest reason to use an existing script is for security issues. 50 developers working on a project are ussually better than one. Unless of course it's my site. Lol.