I havent heard anybody saying anything about diving in India. But a good friend of mine had done a few dives in Sri-Lanka few years back and he said that it was Good. Sorry but thats all i can remember.
Maldives is not too far from both countries. Should be able to get a flight from any one of them for $220-$270(Return flight). Try Sri-lanka Airlines (UL), Indian Airlines (IC) & Maldivian Airlines. These are the best choices to make in terms of price. Flight time is about 1 hour. (Maldivian might take 1h 20min but they most of the time have the best price.)
Its just the beginning of the season for the Maldives. So still if you have a look around on the internet you might be getting a good price on one of the resorts or a liveaboard.
If you would like to do different activities the best choice can be an island as they would offer more activities than a boat. If you are experienced divers and have no problems in current, dont mind doing only diving on your holiday(3 dives a day) then Liveaboard is also a good choice.
On the resort islands it more relaxed. Normally they will have 2 boats going out everyday. 1 in the morning and one in the Afternoon. Morning some islands they have a 2tank dives. So you will be back on the island after 2 dives. Just before lunch most of the time. Afternoon most islands have single dive. So you will be back pretty quick. But the best thing is that your dive are not prepaid unlike Liveaboards. Liveaboard the dives are included in your price. (Ofcourse if its a diving Liveaboard). Resort you can select a dive package ones you are there with the help from the dive guides at the dive school. Island gives you many other..water-sports,SPA,Live Band,Pool, etc...
Hope this will help a bit
Happy Dives