I'd recommend finding a designer (that won't charge you an arm and a leg), research, check portfolios, etc. If you want to save money, doing it yourself will definitely take a lot of time.. and I do mean a lot, especially if you don't really have experience in design/coding.
$100 a month is not bad - not great either... do you know what they will be doing exactly?
If you're doing it yourself:
1. Use a stylesheet, get rid of the style "hard coded" in the page.
2. Use a descriptive title, instead of what you have now... that title is what people will see when searching.
3. Use h1, h2 and h3 tags.
4. MORE CONTENT!
5. I dunno about the Special, it would be hard to track that i'd recommend just 15% off for a referral or something.
6. Develop your services - let your customers know what they will be getting!
7. Contact Info? Do you have a physical address?* see below if yes.
8. Maybe add Google Analytics to your site (track visitors, get more info on your demographics)
Carpet cleaning is highly competitive, so if your web customers can't compare your service with the other guys... they will pick the guys that have the better information (most of the time),
The main reason for having a site, is for getting new customers and in a sense free "advertising" once you have something established.
*If you do have a physical address, it should be posted on the footer of all your pages, maybe even on a contact page. The reason? LOCAL SEARCH LISTINGS! This is increasingly growing to be the #1 (if not the #1) way to get customers. Say if you do "Carpet Cleaning Seattle" it will post 10 links based on that location. You'll want to at the very least pop up for your zip code and eventually your area... then service areas. So get "citations" or you can pay $30 bucks to a company (Ultimate Business Listing), there are others... just google to have them submit to multiple sites for you.