If Shakib was an Indian, he would not have found a place in the team. He is not good enough to find a place as a number 5 batsman in Indian team, nor is he a better spinner compared to Jadeja and Ashwin. In case he found a place in the team, he would get to bat at number 8 or 9 where he would not so much batting opportunity.
No one in the world besides Smith/Willamson/Root could get into India’s top 5. While India’s 8 best batsmen could walk into the top 5 or any other team.
So, that’s not a fair frame to look at Shakib.
India’s situation is different as I see it:
India has played 5 batsmen fairly often and Ashwin has batted at 6 or 7 then.
Relatedly, I don’t believe Ashwin is anywhere near a better choice than Shakib to bat at 6 or 7. Heck, if Shakib got to play the format more, he could even bat at 5 for most sides.
Also, India doesn’t need a spinner/all-rounder who can bat in the top 6 and be their second choice spinner, whose job is to bowl anyway.
And as you implied, Shakib doesn’t belong at 8. Moreover, Jadeja is really a specialist spinner who can bat a bit [first class triple century gets brought up but until he scores a test hundred or more, he’s a specialist spinner]. Jadeja may be a better spinner, but he has nowhere near the all-round ability that Shakib brings to a team.
Ashwin and Jadeja are spinners who can bat a bit or quite well, but that’s all India need because of their batting riches and now an emerging batting-seam bowling all-rounder.
Any other country would sprint at the chance of having Shakib at 6 [or at a push 7].
I’m not arguing with you, but wanted to talk about why Shakib wouldn’t get in.