I would not choose Ganguly for the ODI side. If any side, I would pick him for the test side. Ganguly's application and temperament in ODI's is very questionable, when it comes to his own performance. He frequently destroys the momentum while batting, and he is a definite liability in the field.
Giving Kaif the captaincy at this stage would be a shrewd and possibly negative move. It would not only put mindgames into the head of Dravid, who has been told he has been selected till the World Cup, but it would also put added pressure on Kaif, who has only recently figured out how to use the bat to score runs.
So, I would disagree with you on both counts. Captains are not supposed to make the impossible possible. If our batting had been performing as it should have, we would have won this series. If you point out bad batting order as the reason--the same ploys worked earlier, so why would one be led to believe that they wouldn't again?