how to be successful in CS field with inadequate background? Can just passion help for surviving grad school?
You do not sound like the strongest CS student. It appears that with luck, you will just "get by" in CS, and graduate near the bottom of the class. As long as you are resigned to that likelihood, and to just doing what you need to survive, you should continue.

The potential rewards could well make the effort worthwhile. Modern corporate development, particularly management, is about computing. I envision a "management" track for you, rather than a programming track. And if so, your skill level, such as it is, will give you the advantage over many managers. Your "passion" would be a big plus in this environment.

Your "endgame" may well be a degree in management, with CS only as a stepping stone. It might even make sense for you to leave CS, take a degree in management (MBA or Indian equivalent), and return to CS later when you have better idea of how to "manage" yourself in such a program. Some MBA programs even offer CS as a minor, so you could take "a few" more CS courses there without risking a whole degree.