The Indian supreme court recently rejected Novartis' patent on Glivec, because the formulation wasn't different enough to merit a new patent (I don't know enough to know whether that was the right decision; just pointing out that the patent situation is different). The Indian government also has pricing restrictions on ~350 drugs deemed "essential".
On top of this, compared to the US, there's little to no drug marketing in India (yet). Plus lower labor/capital costs, etc.
Not true, there are huge marketing overheads in India. Drug Marketing in India is much more hidden, companies shower huge gifts and money to doctors to prescribe their drug. SO essentially companies cannot publicly declare this as marketing budget.
Basically, the Indian government doesn't give a sh#t about the methods that US pharma companies are using to generate more revenue in the US (slightly alter the compound so it's basically the same stuff, and then patent the new stuff).
If you are referring to now-a-days somewhat popular belief that India doesn't respect patents or has no patent system then I am humbly requesting you to do a little bit of research and you'll find out that it's very very far from the truth.
It's just that it doesn't grant a patent on A because the patent of C expired and the company decided to call it A or if rejected then applied again by calling it B.