£5 for that sounds perfectly reasonable.
We once had a carton of milk leak in the top crate of our Christmas shopping, and empty itself over every single crate in the stack (including several that were not ours). The driver took everything back immediately, even things that could have been washed. I would have washed tins etc, but the driver insisted that he could not leave milk-covered goods.
I had to go and do my Christmas grocery shop 2 days before Christmas, when not everything I wanted was available, and I didn't have the time to hunt - hence the carefully planned online shop - and I had to change my menus despite having pre-prepared lots.
Although Ocado refunded the cost of the shopping, they did not offer any compensation, not even a voucher off a future shop, until we pointed out that it was very poor customer service.
The previous year our Christmas shopping delivery had been cancelled at the last minute by snow.
Lesson learned: don't rely on online shopping for an important occasion!