Combine flour, salt, sugar, and butter in a bowl until it resembles coarse crumbs. Add ice water to form a dough. Cover and chill the dough for 30 minutes.
Preheat your oven to 350F.
Roll out the chilled dough and place it in a 9-inch pie dish.
Blind bake the pie crust for 20 minutes, then let it cool to room temperature.
To make the filling, whisk sugar and cornstarch in a saucepan. Add coconut milk, heavy cream, and egg yolks. Whisk until smooth. Cook over medium heat until the mixture thickens.
Strain the custard through a fine mesh sieve and stir in coconut and vanilla extracts.
Pour the filling into the cooled pie shell. Cover the filling with plastic wrap and chill for at least two hours or overnight.
For the topping, beat whipping cream and powdered sugar in a bowl until stiff peaks form. Spoon this over the chilled pie and sprinkle with shredded coconut flakes.