Using a double boiler, heat 1 ¾ cup milk to boiling over medium heat.
While the milk is heating, mix together the sugar, salt, cornstarch, and flour. Add the remaining ½ cup of milk and whisk until smooth.
Drizzle the milk/sugar mixture into the hot milk, whisking as you drizzle it in.
Cook, stirring constantly until it starts to boil slightly and thicken, then reduce heat to low, cover the pan and cook for an additional 5 minutes, stirring often.
Place the egg yolks in a small bowl and whisk them to break up the yolks.
Remove 3 tablespoons of hot cream and add it to the eggs, whisking as you add it to temper the eggs.
Add the egg mixture into the hot cream. Whisk and cook for an additional 2 minutes or until thick.
Remove the pan from the heat.
Add in the butter, coconut flavor and shredded coconut. Stir well.
Pour the cream into the pie crust. Smooth the top.
Allow it to cool for 10 minutes, then cover the pie and refrigerate.
Once the pie is cool, prepare the whipped cream.
Use a high powered hand mixer or stand mixer to beat the cold cream, sugar and coconut flavor until stiff peaks form.
Spread the whipped cream over the cooled pie.
Sprinkle the remaining coconut flakes over the top of the pie.
Refrigerate until serving and refrigerate any leftovers.