I would personally just take it back and give it to your usual first name terms trusted place. Pay them separately, have a laugh with them about how crap the other place is, and get the car fixed.This is the one and only time I've deviated from that very logic mate. All due to my holiday and having to have the car running by the time I came back. Been royally shafted by that mistake and it'll prove a costly one. Any minor stuff I can do myself, but removing rocker covers on my engine is a nightmare job.
Genuinely not sure what the next move should be. I could take the car back and book it into the highest rated garage here for BMW work (Redish automotive in Bristol) and try and recoup my money through clickmechanic, or leave it with the current garage to sort his mess out and potentially wait weeks for my car to be returned and there's no guarantee it'll be fixed.
I'd then probably look to recoup my money through my credit card provider or whatever for the other garage, and let them pursue me if they wanted to after that.