I agree with most of what Mark wrotewhat Mark wrote. However, instead of visiting websites of individual bus companies or going to the Retiro bus terminal, there's a far better way to find out the prices and schedules of intercity buses anywhere in Argentina:
Just enter origin, destination and date, and hit "buscar". If you want, with credit card you can also buy the ticket directly from the site & print it.
For example, for Buenos Aires (Retiro) - Puerto Madryn, there are 6 different operators running lots of buses daily. Results can be handily sorted by duration, price etc. Quickest is 18 hours (Condor - Estrella), while cheapest is AR$ 525 (El Pinguino) one-way.
(If price isn't the main factor, I can also recommend Andesmar. Though I haven't tried most of the companies on the BA-PM route, like El Pinguino, Don Otto or Via Tac.)
For Puerto Madryn - El Calafate, Andesmar seems to be the only option with one daily bus; AR$ 835 (cama ejecutivo) or AR$ 950 (cama suite).
Good point by user27478Good point by user27478 too. I think everyone should take at least one long-distance bus trip while in Argentina, but spending big part of your 12 days in buses probably isn't optimal. Still, of course you'd miss something if you fly. If nothing else, you will better appreciate the vastness of it all and maybe feel some additional sense of (In Patagonia type) adventure going by road. :-)
(One option: visit Patagonia later with more time, and go to perhaps Salta or Mendoza instead.)