What you have to do is add into the equation a cost to put things right, at no cost to the customer, if something unexpected goes wrong and you can't get them to back out.........the so called hassle factor.
It means that people who have jobs that go according to plan pay more than they need to, as they cover the cost of the things that go wrong. They do so because their job might have gone wrong.....
This seems like a really good solution.
The problem with offering refunds or compensation or whatever is that customers often don't understand the difference between things that are the mechanic's fault and things that are just unexpected problems. Midlife's solution gives you the room to deal with the unexpected issues without having to explain every detail of every repair job to every customer. Of course, if you know the problem was an error on your part you should admit it (as you rightly did with the customer with the pulley wheel problem).