Step 1 Heat the oven to 240 Celsius.Add the aubergine, lamb, onion, oregano, oil, tomato paste, garlic, cinnamon, allspice, red-pepper flakes, 1¾tsp salt and a good grind of pepper to a 26cm-by-34cm (or similar) roasting tin and mix well to combine. Bake until the mixture is well browned, stirring twice throughout and breaking apart the meat with a spoon – 30 to 35 minutes.
Step 2 Remove from the oven and continue to break apart the meat very well. (Don't worry if you break apart some of the aubergine, too.) Add the canned tomatoes with their juices, lightly crushing the tomatoes by hand. Stir in the chicken stock and parsley, then return to the oven and bake for another 35 minutes, stirring twice throughout, until the sauce is thick and rich and the aubergine is very soft. Remove from the oven and turn the temperature up to 250 Celsius.
Step 3 While the casserole is in the oven, prepare the topping. Whisk together the yogurt, yolks, flour, garlic and half the Parmesan with ¼tsp salt and a good grind of pepper. Once ready, spoon the yogurt mixture over the lamb and aubergine, gently spreading to cover. Top evenly with the remaining Parmesan, feta, pine nuts, parsley and red-pepper flakes.
Step 4 Bake until golden and bubbling – 15 to 20 minutes. Leave to cool for about 15 minutes before serving. – New York Times