Prepare middle layer first. Chop onion and mince garlic. Sauté onion in olive oil in large skillet until soft. Add garlic, beef and lamb. Brown over medium heat and spoon out any extra fat. Add wine to hot skillet and scrape brown bits to incorporate flavour. Add crushed tomatoes, tomato paste, oregano, cinnamon, cloves, nutmeg, bay leaf, parsley and salt and pepper. Simmer for an hour, stirring occasionally, until flavours are well incorporated and sauce is thickened and reduced.
Meanwhile, peel or partially peel eggplant. Slice into 1/2 inch rounds. Lay on paper towel and sprinkle with salt. Allow to sit for 30 minutes to release liquid.
Peel and slice potatoes into ¼ inch slices. Brush both sides with olive oil and arrange on a baking sheet. Broil until starting to brown, turn and broil other side. Remove to a plate.
Pat eggplant dry with paper towel and brush both sides with olive oil. Arrange slices on a baking sheet and broil, using same method as potatoes. Spoon a small amount of meat sauce in the bottom of a 9 x 12 baking dish and layer eggplant slices over top. Cover with layer of potatoes, spreading to evenly cover the eggplant.
Pour meat sauce over the vegetable layer. Preheat oven to 350 degrees and ensure rack is set at middle position.
Prepare top layer by heating flour and butter in a saucepan and stir until blended and bubbling. Heat milk and add in small amounts, whisking well until incorporated. Allow to simmer until thickened. Season with nutmeg, salt and white pepper. Remove from heat. Add grated Parmesan cheese and stir until melted. Allow to cool slightly.
Separate 3 eggs, reserving whites for another use. Whisk yolks until smooth. Add a very small amount of white sauce to yolks, stirring well. Add yolk mixture slowly to white sauce, whisking well until blended.
Pour sauce over meat mixture. Grate additional Parmesan cheese over top.
Bake for 1 hour until bubbling at edges and top is browning. Use convection setting in last few minutes if desired for maximum browning.
Allow to rest for at least 15 minutes before serving.