In a large bowl or food processor, whisk together the flour, sugar, and salt.
Add cold cubed butter and cut into the flour until the mixture resembles coarse crumbs with some pea-sized pieces still visible.
Drizzle in ice water one tablespoon at a time, mixing gently until the dough just holds together when squeezed. Divide into two disks, wrap in plastic, and refrigerate for at least one hour.
Wash and pit fresh cherries using a cherry pitter. Combine the cherries with sugar, cornstarch, lemon juice, cinnamon, and salt in a medium saucepan.
Bring the mixture to a gentle boil over medium heat, stirring often to prevent scorching. Reduce heat and simmer for 2 to 3 minutes until thickened. Remove from heat, stir in almond extract, and cool for at least 20 minutes.
Preheat oven to 400°F. Roll one dough disk into a 12-inch circle on a floured surface. Transfer to a 9-inch pie plate and press gently into the bottom and sides.
Pour the cooled filling into the crust and spread evenly. Dot the top with the 2 tablespoons of butter pieces.
Roll the second dough disk into a 12-inch circle. Cut into strips and weave a lattice top over the filling, or lay a solid crust over and cut 4-5 slits for steam to escape.
Trim and fold the overhanging dough under itself around the edge of the pie, then crimp with your fingers or a fork to seal.
Whisk the egg and heavy cream together and brush evenly over the top crust. Sprinkle generously with turbinado sugar.
Place the pie on a lined baking sheet and bake at 400°F for 20 minutes. Reduce heat to 375°F, add a pie crust shield, and bake for another 30 to 35 minutes until the crust is deep golden brown and the filling is bubbling.
Transfer the pie to a cooling rack and let it cool for at least 3 hours before slicing to allow the filling to set properly.