Peel and slice eggplant.
Brush olive oil and sprinkle salt on both sides and place under broiler
Cook about 4-5 minutes on each side. Remove and save for later
Saute onion in a large skillet for a few minutes.
Add garlic and beef stirring until browned.
Add oregano, basil, cinnamon, salt and pepper and stir.
Add tomato sauce and and bring to a boil.
Lower heat and simmer for 30 minutes.
In a separate saucepan melt butter.
Remove from heat and whisk in flour, salt and pepper
Gradually add the milk, stirring with wire whisk.
Place saucepan back on the stove and bring to a boil, stirring until thick.
Remove from heat.
In a small bowl beat 2 eggs.
Add a small amount of hot cream sauce to eggs and stir.
Add egg mixture to cream mixture and stir.
Preheat oven to 350 degrees.
Use 13 x 9 inch baking pan.
Spray with vegetable oil.
Layer half of the eggplant overlapping if necessary.
Sprinkle 2 tablespoons of Parmesan and cheddar cheese on top.
Pour all of the meat sauce on top of the eggplant spread evenly.
Sprinkle 2 additional tablespoons of the Parmesan and cheddar on top of the meat sauce.
Layer the remaining eggplant.
Pour the cream sauce on top and spread evenly.
Sprinkle with remaining cheese and bake uncovered for 35-49 minutes.