Combine the flour and salt in a bowl. Add the cubed butter and toss to coat. Dump the mixture out onto a clean surface and use a rolling pin to roll the butter into thin sheets, combining it with the flour. Use a bench scraper to scrape the rolling pin and to bring the mixture back into a pile as necessary. Continue until all of the butter is incorporated into the flour. Mixture will be very flaky.
Return mixture to the bowl and add the parmesan cheese. Place in the freezer for 15 minutes.
Remove from freezer and add the buttermilk. Use a spoon and then your hands to stir the mixture until it comes together into a ball. If mixture is too dry, add the water or vodka a tablespoon at a time.
Divide the dough in two and flatten into disks. Wrap each disk in plastic wrap and chill in the fridge for at least 1 hour and up to 3 days. For more help, see my pie crust tutorial.
To make the filling:
Heat the butter in a wide, shallow pan over medium heat. Add the onion and cook for a few minutes until translucent, about 3 minutes. Add the garlic and cook 1 minute more. Add the sliced mushrooms and cook until browned, stirring frequently. The mushrooms may crowd the pan, but they will shrink as they cook. Season with salt and pepper.
While the mushrooms are cooking, roll out one disk of the pie dough into a rough 13-inch circle on a lightly floured surface. Transfer the dough to a 9-inch pie dish.
In bowl, whisk together the heavy cream, eggs, and flour. Add the mushroom mixture, herbs, and cheese and stir to combine. Dump mixture into the bottom pie crust. Roll out the second dough disk and transfer it to the top of the pie. Pinch the two crusts together and tuck into the dish to seal. Cut slits into the crust as vents. Brush pie with egg wash.
Bake at 350°F until crust is golden brown and juices are bubbling, about 60-75 minutes. For best results, let pie cool to room temperature before serving to let the filling thicken properly.
Store pie in the fridge. If desired, reheat pie at 350°F for 30 minutes.