Preheat oven to 375 degrees F.
Heat the oil and butter in a large skillet over medium-high heat. Add the onions and garlic to the pan. Season with salt and pepper. Cook until soft, about 2 minutes.
Add the mushrooms to the pan and season with salt and pepper. Cook until mushrooms are tender, stirring occasionally, about 5 to 7 minutes.
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 sauce with the salt, pepper and stir to combine.
Bring the sauce 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. Add the wine, heavy cream, mustard, cumin and paprika. Stir well and cook for 2 minutes more. Turn off the heat, add the shrimp and1 cup of cheddar cheese.
Gently stir until cheese is melted and shrimp is beginning to turn pink. Season with salt and white pepper, to taste.
Place the mixture into 4 individual gratin dishes. Sprinkle the remaining cheddar cheese, parmesan cheese and bread crumbs on top. Bake for 15 to 20 minutes, or until the sauce is bubbly and the caseroles are browned on the top. Serve warm.