Not all body shops are shafters and I hope this one doesn't let you down. But I think the situation you describe is symptomatic of body shops all round the world. They know they can do the job in the allotted time frame but there is always other work opportunities being presented to them so your job gets bogged down.
Ask me how I know all this!!!
The only advice I can offer is you need to keep a gentle pressure on them by regularly turning up and talking to them. Keep telling them the reason you want the car back by a certain date, But be nice. Never threaten or raise your voice or that's when it will start going south in a hurry. I'm encouraged that you say the car is in primer. Congratulate him on getting this far and tell him you can't wait till you see more progress next time you pop by.
A lot of times you need to feed egos. Body shop guys are no different.
Good luck
Ian