Preheat an oven to 190 degrees C. Grease a large pie dish or baking dish.
Puree olive oil, garlic, ginger, curry paste, coriander, cumin, turmeric, cayenne pepper and cinnamon in a food processor. Place the puree in a large mixing bowl and stir with red onions, eggplant, celery and red capsicum to coat all the vegetables with curry mixture.
Turn the vegetables into a large frypan over medium heat and cook and stir until the vegetables are tender, about 7 minutes. Add the cooked lamb and cook and stir until the lamb is hot and coated with spice mixture, 2 to 3 more minutes. Turn off the heat under the frypan.
Heat milk, butter and wine in a saucepan over medium heat until the mixture is hot but not boiling and the butter is melted. Whisk 3 tablespoons of flour into the hot milk mixture and cook, whisking constantly, until the gravy has thickened.
Reheat the lamb and vegetables over medium heat. Add the gravy and stir to combine. Season to taste with salt and pour the hot filling into the greased pie dish.
To make the crust, mix together the flour, salt and curry powder in a bowl until thoroughly combined. Cut in the butter or margarine with a pastry cutter (or use your hands) until the mixture resembles coarse crumbs. Sprinkle with water and stir gently until the dough just comes together. Form into a rough ball, place on a floured work surface and roll out large enough to fit over the pie dish. Lay the crust over the dish and lamb filling, crimp it to the dish with a fork and cut several slits in the top of the crust.
Bake in the preheated oven until the crust is golden brown and the filling is hot, about 35 minutes. Let cool 7 to 10 minutes before serving.