Sift the flour onto some baking paper and then add it to a food processor.
Add the sugar, and salt and pulse a couple times to mix.
Add about half of the butter and pulse several times.
Then add the rest of the butter and pulse 6 to 8 times until the largest pieces of butter are about the size of large peas.
Sprinkle the mixture with about 2 tablespoons of the ice water (leaving the cubes behind) then pulse again.
Then add more ice water, a tablespoon at a time, pulsing once or twice after each addition until the dough just barely begins to hold together.
You know that the mixture is ready if when you pinch some together with your fingers and it holds together. Be careful with the amount of water you add, too much and the crust will be tough.
Empty the crumbly dough mixture from the food processor onto a clean, dry, floured surface.
Form a mound with the mixture and knead briefly (just a couple of turns). Form into a ball, cover with plastic wrap and chill for at least 1 hour (although it can be up to a few days or even frozen at this point).
Once chilled, let the dough sit at room temperature for 10 minutes before rolling.
Roll out the crust on a lightly floured surface to about ¼ inch thick.
Fit into a 9-inch pie plate, prick bottom and sides of piecrust with a fork.
To blind bake the crust:
Line the pie with baking paper. Make sure it's snug the lining right up against the edges and sides of the pie.
Fill the pie with weights (this can be store bought weights, raw rice, dried lentils or dry beans). Pour the pie weights into the pie dish. Make sure they cover the bottom of the pie and press against the sides of the pie. This will keep the pie from puffing up or shrinking.
Bake for 10 minutes and remove the weights and baking paper.
Return to the oven and bake for another 5 minutes or until golden brown.
For the filling:
Combine 1/2 cup sugar and flour in a heavy saucepan. Whisk together coconut milk and egg yolks.
Gradually whisk egg mixture into sugar mixture; bring to a boil over medium heat, whisking constantly. Boil 1 minute (this will make a thick pudding like custard); remove from heat.
At this stage, if there are any lumps, you can strain the custard into a bowl.
Stir in butter, 1 cup coconut, and vanilla.
Pour into the cooled crust, cover with plastic wrap, gently pressing it directly on filling in pan; cool for at least 30 minutes or until set.
For the whipped cream topping:
Add powdered sugar, skimmed milk powder (if using - This is to help give the whipped cream structure so it doesn't flatten out too quickly), and vanilla to the cream.
Using a food processor, whip the cream until it thickens (this doesn't take long at all so check often).
Separate into two portions.
In one portion, ad 1/2 pf the toasted coconut and spread over the pie.
Spread the remaining whipped cream over the pie and sprinkle with the remaining toasted coconut.