- Cut eggplant into 5 mm slices. Lay the slices out and sprinkle liberally with salt. This leaches out the bitterness. Leave these for at least an hour.
- Heat olive oil in a saucepan and add onion and garlic. Sauté these until the onion starts to change colour. Add the meat and brown thoroughly.
- Add bay leaves and cinnamon stick, and continue to stir the meat until all the moisture from the meat is gone.
- Add tomatoes, herbs and sauces. Mix through and allow to cook for 15 minutes, stirring occasionally.
- Add wine and continue to cook until the sauce is very thick. It should have very little moisture in it all. Remove the bay leaves and cinnamon stick, and allow to cool.
- In another saucepan, melt butter over a low heat. Remove from heat and add the flour. Blend this through thoroughly, then return to the heat and cook gently for 3 minutes, stirring continuously so that it does not catch (burn). Remove from heat and add the milk. Mix this through then return to the heat and allow mixture to boil. Allow sauce to cook gently for one minute, stirring continuously. Remove from heat, add cheeses, nutmeg, cinnamon and pepper and mix through. Allow to cool.
- Rinse the slices of eggplant under running water and dry on paper towels. Heat olive oil in a frying pan. Place slices of eggplant in the pan and quickly turn to coat both sides in the hot oil. Fry until the slices are cooked (when they change colour and become soft). Drain and repeat with remaining slices.
- In a large casserole dish, lay slices of eggplant to cover the bottom. Cover with a layer of the meat sauce. Repeat layering eggplant and meat sauce until within 3 cm of the top of the dish.
- Add the egg to the cool, cheese sauce and mix through thoroughly. Spoon this on the top layer in the casserole dish and sprinkle with extra grated cheese. Bake at 200 °C (400 °F) for 45 minutes. Remove from oven and allow to cool and set for 10 minutes.
- Serve with a tossed Greek salad, red wine and crusty garlic bread.