Set a large, 4 to 6-quart stockpot filled with water over high heat and bring to a boil. Season with salt and add the dried shells to the pot. Cook the pasta until pliable but not al dente, about 8 minutes. Remove the shells from the water and lay out on a sheet pan to cool. Be sure to lay each shell directly on the sheet pan without touching any of the other shells so that they will not stick.
While the shells cool, make the shell stuffing. Set an 8-inch saute pan over medium heat and add the olive oil to the pan. Once the oil is hot, add the onions and garlic to the pan. Cook until the onions until softened, about 3 minutes. Remove from the heat and set aside to cool. In a medium bowl, combine the ground veal, pork, marjoram, kosher salt, black pepper and the cooled onions. In a separate, smaller bowl, combine the cream and egg and whisk to combine. Add the cream and egg mixture to the veal mixture and mix until thoroughly blended without over-mixing.
When the shells have completely cooled, place 2 tablespoons of the stuffing into each of the 24 shells, and place the open-end down in a 9 by 13 by 2-inch casserole dish. When completed, wrap the casserole with plastic wrap and set aside in the refrigerator as you prepare the bechamel.
Preheat the oven to 350 degrees F.
Set a 1-quart saucepan over medium-high heat and add the butter. Once melted, add the mushrooms and thyme leaves to the pan and cook, stirring often, until most of the liquid has evaporated, about 5 minutes. Add the onions and garlic to the pan and cook for 3 to 4 minutes, stirring occasionally. Sprinkle the flour into the pan, stir to combine, and cook the roux, stirring, for 2 minutes. Whisk the milk into the saucepan. Season the bechamel with the salt, pepper and nutmeg and stir to combine. Bring the bechamel to a boil, reduce the heat to a simmer, and cook, stirring frequently with a wooden spoon, until sauce is thick and smooth and any floury taste is gone, about 5 minutes.
Remove the shells from the refrigerator, discard the plastic wrap, and pour the bechamel over top the shells. Sprinkle the parmesan cheese over all and place the casserole in the oven. Bake the shells until the bechamel is bubbling and the top is golden brown, about 30 minutes. Be sure to rotate the casserole after 15 minutes to ensure even browning. Remove from the oven and allow to rest of 5 to 10 minutes before serving.