If you use Blue dollars and buy it in Buenos Aires, it will be less expensive.
Thats certainly true, but you also risk not having any seats on the plane if you leave it til you arrive.
Bariloche might not be on the way - its a bit out of the way. But there isn't a great deal between BA and El Calafate in terms of places one could theoretically stop.
But a flight is the best option. To be honest, Ushuaia doesn't offer much - there are some good day hikes. But your not gonna get the same scenery as in Los Glaciares N.P.
