First, make the cashew ricotta. This can be done a day or two in advance.
While the noodles are boiling, make the Bechamel Sauce. To make the sauce, heat vegan butter in a medium saucepan over medium-high heat. Once butter is melted, add flour and stir over heat for 3-4 minutes, until mixture is smooth and golden-brown. In another pot, bring milk, minced garlic, herbs, nutmeg, and salt to a boil. Add hot milk to butter/flour mixture in 3 batches. Bring to a boil, whisking often, then reduce heat to a simmer. Cook for 10 minutes, whisking constantly. Once thick and creamy, remove from heat and set aside. The sauce will continue to thicken as it cools.
Heat up olive oil in a large skillet over medium heat. Add mushrooms and sauté, stirring occasionally, until golden brown. Stir in spinach until spinach has wilted and shrunk to about 50% it's original size. Remove from heat and set aside.
To assemble the lasagna, pour about 1/3 cup of bechamel sauce and 1/3 cup of marinara sauce on the bottom of a 9x13 casserole dish and spread evenly. Lay down a layer of noodles. Add a layer of the mushroom/spinach mixture and top with 1/2 of the cashew ricotta, evenly dropping them in 1 tablespoon-size pieces. Top this with more bechamel and marinara sauce and repeat the pattern one full time. Top with the 3rd layer of noodles and final layer of sauces. Top with vegan parmesan, if using.
Cover in foil and bake for 40-50 minutes until the lasagna has started to bubble up. Remove from heat and let cool 15 minutes before slicing. Top with vegan parmesan cheese and/or fresh oregano and serve.