In a large pan or pot, heat the vegetable oil over medium heat. Add cumin seeds and let them sizzle for a few seconds. Add chopped onions, minced garlic, and grated ginger. Sauté until the onions are soft and translucent.
Add ground coriander, turmeric powder, curry powder, and red chili powder. Stir well to coat the onions with the spices.
Pour in the diced tomatoes with their juices. Cook for 3-4 minutes until the tomatoes break down and the mixture becomes fragrant.
Stir in the coconut milk and bring the mixture to a gentle simmer. Let it cook for another 5 minutes, allowing the flavors to meld.
Add the cauliflower florets to the curry. Mix well. Cover the pot and let the curry simmer for 15-20 minutes or until the cauliflower is tender. Season with salt and pepper to taste.
Stir in garam masala just before serving. Serve with rice or with naan bread.