Louise is right. I hope you have already booked your Inca Trail, as it fills fast and the government limits daily numbers.
It is certainly plausible to do a 23-day trip from BA to Cusco. Once upon a time you could do the whole thing by train, but now only the Bolivian and Peruvian part is still operating. Buy your onward tickets as soon as your arrive in each stop.
Skim quickly through the blogs to extract additional information for each stop.
I would take overnight sleeper buses to all your destinations. BA to Iguazu is about 20 hours. From Iguazu I would go to Asuncion Paraguay (5 hours) and then down to Resistencia/Corrientes (6 hours). http://www.travelpod.com/cgi-bin/keyword2...._keyword=iguazu
From here you need to cross the Chaco, a long dry, boring ride. Flechabus http://www.flechabus.com.ar/mapa_rutas.htm
covers most of these routes.
You might have to miss out San Miguel de Tocumen, but Salta and Jujuy will more than make up for this. Corrientes to Salta is about 15 hours. http://www.travelpod.com/blogs/0/Argentina/Salta.htmlhttp://www.travelpod.com/cgi-bin/keyword2....b_keyword=jujuy
From Jujuy continue to the Bolivian border crossing at La Quiaca/Villazon. 5 hours.
Last time I heard there is a Villazon-Uyuni train. It takes about 9 hours and only leaves once a day I think at 15:30 hours. http://www.travelpod.com/cgi-bin/keyword2....eyword=villazon
At Uyuni shop around for the best operator to see the Salt Flats.http://www.travelpod.com/blogs/0/Bolivia/Uyuni.html
From here continue north through Oruro (stop and visit this fascinating town if time permits) to La Paz. http://www.travelpod.com/blogs/0/Bolivia/Oruro.htmlhttp://www.travelpod.com/blogs/0/Bolivia/Lapaz.html
From La Paz, there are regular buses to Puno, but you may want to stop off in Copacabana, which is probably the nicest town on Lake Titicaca. From here you can visit Isla del Sol. http://www.travelpod.com/blogs/0/Bolivia/Copacabana.html
Puno is a bit miserable, but you may be interested in visiting the floating islands of the Uros indians, though this tends to be a bit touristy these days. http://www.travelpod.com/blogs/0/Peru/Puno.html
From Puno there is regular bus and rail to Cusco right across the altiplano, about 8 hours.
You can do this all in 23 days, but you must plan carefully. Many routes may have only one bus a day, for example Corrientes to Salta and Villazon to Uyuni. All the rest should have several daily or nightly departures. Unless you particularly want to see the scenery, travel by night on the longer runs, but only use luxury buses for night travel, not local chicken buses. Pretty much anywhere in Bolivia try to keep to day runs for the spectacular scenery, especially around Lake Titicaca.
Read up on all the towns you will pass through to decide how long you want to stay in each.
Hope this helps a little.