Preheat the oven to 200'C / 400’F / Gas Mark 6.
Remove and reserve the stalks from the mushrooms. Put the cardamom pods in a mortar and pound with a pestle, then set aside.
Pour about 1 liter / 1 3/4 pints (4 1/4 cups) water into a large, heavy-based pan. Add 2 teaspoons salt and lemon juice and bring to a boil. Add the mushrooms and cook for about 2 minutes. Drain and refresh under cold running water. Drain again, then wipe and dry well on kitchen paper (paper towels).
To make the filling, heat the oil in a kadhai, wok, or heavy-based frying pan (skillet) over medium heat, add the onions and, fry for about 4-5 minutes, or until soft. Add the khoya and mix well, then add the grated ginger, crushed cashew nuts, pomegranate seeds, chopped coriander, the ground spices, and 1/2 teaspoon garam masala. Season with salt and mix well. Remove from the heat and stuff each mushroom with the mixture.
Place the mushrooms on several large baking sheets and put them into the hot oven for about 5 minutes, then remove from the oven and set them aside.
To make the paste, put the pomegranates into a blender, pour in 375ml / 13fl oz (1 1/2 cups) of water, and process briefly. Trim the leftover mushroom stalks and transfer them to a blender or food processor. Add the onions, ginger, and dried red chillies and process, adding a little water, if necessary, to make a smooth paste.
For the sauce, heat 4 tablespoons oil in a heavy-based wok or frying pan (skillet) over low heat, add the reserved cardamom pods and stir-fry for about 1 minute, then add the onion-mushroom paste and cook for about 10 minutes, or until the paste turns light brown.
Add the remaining ground spices and season with salt. Add the pomegranate juice, then bring to the boil, reduce the heat and simmer for about 5 minutes. Add the stuffed mushrooms to the sauce and simmer gently until hot.