Combine whole milk, coconut milk, sugar, and cornstarch in a saucepan over medium heat. Whisk constantly until the mixture thickens (about 8-10 minutes).
Slowly add a small amount of the hot milk mixture to the egg yolks, whisking constantly. Gradually mix the tempered eggs back into the saucepan, and cook for 2 more minutes until the custard thickens.
Remove from heat and stir in vanilla extract, butter, and shredded coconut until the butter melts and the mixture becomes creamy.
Pour the warm custard into the pre-baked pie crust. Smooth the surface with a spatula. Cover and refrigerate for at least 3 hours to set.
Beat heavy cream, powdered sugar, and vanilla extract with an electric mixer until stiff peaks form.
Spread whipped cream over the set custard and top with toasted coconut. Slice and serve!