I'm sure others will give you advice about sales of goods and services act
that you paid for a service, you have't received the service so you shouldn't pay again.
You are right they should come back for free.
As the customer I don't think it is for you to tell them whether they must use scaffold or ladder.
But injuries due to falls from ladders is quite high and there are lots of standards and guidance about when and how to use a ladder.
And construction worker should know this.
I'm thinking about personal experiences I can draw on.
I recall having a customer with mystery problems, things not working, except they always worked when our engineers attended.
Eventually after many visits we simply returned all of their money without solving their problem (not sure they really had one).
I think if your roofer doesn't want to come back and fix then he should return your payment in full.
Another thought comes to mind. Presume they are not cowboys, they know what they are doing but sometimes these things do happen, someone takes what they honestly genuinely believe to be the correct action but it doesn't resolve the fault. Maybe if what needs to be done is different to what they first did, they should give you a quote and agree a price for the new work, but then deduct the payment you made for the first job. Hope that makes sense. Just thinking about what I would suggest if you were our customer.