Have a professional upholstery shop do it. It's worth the money. I had mine professionally done, Guy didi a great job. It was worth every penny. Nothing worse than an ill-fitting top.
Like PuterAmI says, check out the Corral body shop. That same question gets asked once a week. Lot's of info there.
When I had mine replaced I had the thought of doing it myself too. But then I thought, for the aggravation and trips to the hardware store for parts and probably to the upholstery shop for those little pieces ya just can't find anywhere except at the pro's place, 300 bucks sounds OK. I am the ultimate cheapass, but that isnt something I want to screw up.