I believe the contracter should have had insurance and bond to cover his mistakes.
You're adding to a year old post but I'll answer it anyway because it's important for consumers to know this.
Should have and do have are two different things.
Most states have laws that require contractors to be licensed and bonded. Like many laws they get broken frequently by fly-by-night contractors.
Insurance is generally a choice. But when a contractor has insurance it does not cover his poor workmanship unless that poor workmanship causes damage to something else. Example. Contractor installs a roof that is faulty. The roof leaks and there is damage to the interior. The contractor's policy will cover the interior damage but not redoing the roof.
Bottom line, it's up to the consumer to carefully check out a contractor and make sure he's licensed, bonded, and insured and can prove it. As for workmanship, getting references to other of the contractor's customers and going to check out the work goes a long way toward making sure the job gets done right.
Unfortunately, too many consumers are suckered by low prices quoted by fly-by-night contractors, fail to do their homework, and end up with expensive problems after the contractor disappears.