Has the thermostat been replaced?
99% of the time its going to be the thermostat opening up too soon and not allowing the engine coolant to get hot enough to allow the heater to work right. Now this is providint that the coolant fluid level is full. It is VERY common to do this. It's a simple repair and the parts cost less than $15. I have included the instuctions for replacing it, maybe its something you feel comfortable doing yourself, if not, just show the shop and they will know what to do.
If you have any further questions, please feel free to reply.
If not, please click on ACCEPT Thanks for asking!