I wouldn't recommend it.
First off most ISP's will not let you run a inbound server (outside connecting in)...due to many reasons. So I would first check with your ISP.
Second...I don't see how you would save any money. You'll have to get a second computer (you wouldn't want to host it on your main for security reasons). But if you have an old pc or if someone will donate you one, great!
Steps you need to take are,
Get a DNS hostname for your home Internet connection.
Create a static IP addy.
Then you need a router configured to port 80 or whatever port will allow HTML requests.
Setup your windows firewall.
Install Apache...its free so no worries there. It'll be the server software you'll need to host your site.
Once you have it all installed and configured...testing testing testing.
and headache headache headache...