Preheat oven to 220 °C/ 425 °F (conventional), or 200 °C/ 400 °F (fan assisted). Toss the cauliflower florets in a large bowl with the oil and spices. Arrange onto a foil lined baking sheet, bake for 30 minutes until tender.
When the cauliflower has 15 minutes left start on the sauce. Heat the butter in a large deep skillet over medium high heat. Add in the onion, garlic, and ginger. Cook until the onion starts to caramelize, about 5 minutes.
Add in the spices and cook 30 seconds until fragrant. Pour in the tomatoes, water, and cream. Bring to a simmer stirring occasionally for 10 minutes.
Once the cauliflower is done add it to the skillet with the cilantro.