Cook the pasta: Bring a large pot of salted water to a boil. Add the pasta and cook according to the package instructions until al dente. Drain the pasta and set aside.
- Prepare the meat filling: Heat the olive oil in a large skillet over medium heat. Add the chopped onion and garlic, and sauté for 3-4 minutes until softened. Add the ground meat to the pan, breaking it apart with a spoon. Cook for 5-7 minutes until browned and cooked through.
- Season the meat: Stir in the cumin, cinnamon, allspice (if using), black pepper, and salt. Add the diced tomatoes and cook for an additional 5 minutes, allowing the flavors to meld together. Set aside.
- Make the béchamel sauce: In a medium saucepan, melt the butter over medium heat. Add the flour and whisk continuously to form a roux. Cook for 1-2 minutes until the mixture turns golden. Slowly add the milk, whisking constantly to avoid lumps. Continue to cook for 5-7 minutes, or until the sauce thickens. Add the ground nutmeg and adjust seasoning with salt and pepper.
- Assemble the dish: Preheat your oven to 375°F (190°C). In a large baking dish, layer half of the cooked pasta. Spread half of the meat mixture over the pasta. Pour half of the béchamel sauce over the meat and pasta. Repeat the layers, starting with the remaining pasta, followed by the remaining meat, and finishing with the remaining béchamel sauce. Top with shredded mozzarella and Parmesan cheese, if using.
- Bake the Macarona Bechamel: Place the baking dish in the preheated oven and bake for 25-30 minutes, or until the top is golden and bubbly.
- Serve: Allow the dish to cool for a few minutes before slicing and serving. Enjoy!