Dhoni's poorness away from home is a bit exaggerated IMO. He averages 31 in SA which is respectable for a subcontinental wicketkeeper.
Having that said, I do agree that batting him higher than 7 would be folly.
India don't really have a batting allrounder - selectors don't seem that keen on Abhishek Nayar for some reason.
Given that, its pretty obvious their best side for SA is
Dhawan
Vijay
Puj
KOhli
Rohit
Rahane
Dhoni
Ashwin
Zak
Shami
Umesh
Don't quite get the BHuvnesh KUmar love. He's a decent option for ODIs/T20s but I just can't see him being a consistent wicket taking threat against good batting lineups in tests