I have thought about contracts before. I tried them out on a few customers to see how they panned out.
IMO you have to decide what type of relationship you want with your customers. I read an interesting piece by Dan Ariely and will post when I dig out the book.
If you want a social contract (that is to say an unwritten one) you are prob more likely to be able to retain and charge well for the work you do, they in turn will feel a social connection with you, their loyalty will be greater than those on a formal contract. They adopt you as their window cleaner.
Those on a formal contract have a formal relationship with you and this can work well as you are in a position to act in a more professional manner. This may mean charging professional rates and keeping customers for the term of the contract. However, the customer is more likely to deal with you as any other of their contracts like utility bills. As soon as they feel they are not getting their pound of flesh they will "price shop" and try and get a better deal.
Having in a contract a condition that handcuffs them to you can serve as an irritation and even further alienate them if they are starting to drift.
Having tried both I prefer the first, my attrition rate is virtually nil. When I did try the formal contract I noticed I lost some of the congeniality that existed before.
Of course it is quite possible to mix the two, however I think that this has to be done from day one and not added at any time later. If it is introduced as "just paper-work" and "tut-hum, I hate it but it keeps the books straight" then move on to a more social contract you may get the best of both worlds. They can forget the contract and move on to be very loyal. The contract is an anchor, they know it is there, it was the starting point.
Personally the only contract I have with customers now is a guarantee that if they are not happy with the service they do not need to pay. It works well, all the pressure is off the customer. Of course because I use the social contract no-one refuses to pay. Would you refuse to give a mate the £20 you owe them? If anything as I now have this on my invoices I receive payment a bit quicker.
Stuart