1. India does have very large middle class population and most of their income is unaccounted.
2. Majority of middle class Indians who belong to certain religion/caste hide their income so as to get many freebies and reservation benefits.
3. Very few rich individuals pay taxes and file correct income tax return. Government is very much responsible for this as filling a simple itr form consist of many different sections and people avoid getting into official paperwork.
4. Though poor people are given various subsidies on paper but because of lack of education they barely know all the scehmes running around them and politicians eat most of their money.
5. Longer judicial proceedings make it even more tough for the system to catch corrupt individuals and implement good policies.