Mix together all the ingredients for the marinade and rub them over the lamb. Set aside to marinate for 20-30 minutes.
Meanwhile, make the sauce. Heat the ghee or clarified butter in a heavy-based pan and add the cloves, cardamom and bay leaf.
When they start to crackle, add the onions and cook on a medium heat until golden.
Add the chillies and cook for 1-2 minutes.
Then add the turmeric and salt and sauté briskly for a minute, taking care that the dry spices do not start to burn.
Add the garlic paste and cook, stirring, for a couple of minutes.
As soon as the fat starts to separate out at the side of the mixture, stir in the diced lamb.
Cook for 4-5 minutes, until browned, then add three-quarters of the corn and all the yoghurt.
Cook gently for about 30 minutes, stirring occasionally, until the corn is nearly mashed and the sauce is becoming very thick.
Add the lamb stock, bring back to the boil, then add the ginger, coriander and the remaining corn.
Reduce the heat to medium and simmer for 10 minutes.
Check the seasoning and add the lemon juice.
Heat the oil in a large ovenproof frying pan over a medium heat, add the lamb and sear for 4 minutes on each side.
Transfer to an oven preheated to 180°c/350°F/gas mark 4 and roast for 6-7 minutes.
Leave the meat to rest for 3-4 minutes, then cut into slices.