After some extensive testing, I have found that the bug is not specific to India.
The basic problem is that when forming a country, the game will not absorb and/or take states from countries that are of a different status than the overlord. Recognized powers will only integrate recognized powers, and the same goes for unrecognized powers. The Raj (BIC tag), however, will not be integrated at all.
In the save files below, there's a pair of files for each scenario:
Scenario 1: Sikh Empire 20-21 - Unrecognized and Recognized Punjab trying to form India. Unrecognized PUN eats the princes, does not eat BIC. Unrecognized PUN eats nothing.
Scenario 2: Sikh Empire 10-11 - Same as above, Belgium replaces the BIC. Unrecognized works the same as above. Recognized eats BEL but not the princes.
Scenario 3: Sindh - With only unrecognized powers, Sindh forms India. If Sindh is recognized, no land is gained.
Scenario 4: Egypt - Unrecognized Egypt eats the vassals except Assyria (ASS is recognized?!). Recognized Egypt eats only the parts of Assyria that fall within Arabia.
The script involved in country formation is: CountryFormation.FormCountry() but I haven't been able to find it for editing (I'm assuming it's compiled in the game files).
Hope this helps sort the issue.