As someone who sometimes orders from Deliveroo and who has had this exact experience I agree with your premise but not your conclusion.
When this happens I understand that this is the delivery guy's responsibility and I don't blame the restaurant for it. This may put me off using Deliveroo but not the restaurant if there is another way I can order from them.
Now if this happens with an in-house delivery guy then yes, that would put me off ordering from the restaurant again.
Interestingly when this happened to me it was partly because the Deliveroo guy was riding a bike. Thus I put the 'blame' on Deliveroo and their organisation and process because trying to deliver a pizza by strapping it on the back of a bike can only end badly...