In a large pan, cook the meat over medium-high heat until brown, breaking it up with a potato masher as it cooks. If using ground sirloin you might need to add a touch of oil.
Drain the meat if desired and return to pan. Add in the eggplant, potatoes, onion, garlic, oregano, cinnamon and basil. Simmer covered about 15 minutes. Remove lid, turn heat to medium-high and add in wine. Cook for 1 to 2 minutes or until it evaporates. Stir in tomatoes, olives and simmer to reduce juices, season with salt and pepper to taste.
Preheat oven to 350 degrees. Spray a 2 quart casserole with nonstick cooking spray and set aside.
For the Bechamel sauce, place the melted butter in a medium size saucepan. Whisk in flour and cook for a minute. Add milk, bring to a boil and continue to wisk until thickened. Remove from heat.
Break eggs into a small dish, whisking until combined. Stir in a small amount of white sauce and whisk to combine. Whisk egg mixture into white sauce. Stir in Parmesan cheese and nutmeg.
Pour the meat and vegetable mixture into prepared casserole and pour the sauce over all. Smooth evenly with a spatula, sprinkle with additional cheese. Place in oven and bake for 45 to 55 minutes. Remove from oven and allow to cool on a wire rack for 20 minutes before serving.