Preheat oven to 425° F and adjust the oven rack to the middle of the oven.
Roll out 1 single crust pie dough for a 9” pie and press into 9” pie pan. Prick gently all over with fork.
Cover center of pie crust with aluminum foil and fill with pie weights (or dried beans). Brush edges of pie crust with heavy cream.
Bake 7 minutes. After 7 minutes, remove the pie weights and foil. Return pie crust to oven and bake an additional 5 minutes, uncovered. Cool on a wire rack before filling.
In a small microwave safe glass bowl, heat 1/4 cup of the heavy whipping cream for 20-30 seconds or until bubby and add to the 3 oz. quality milk chocolate; allow to sit 5 minutes and then stir. Pour into the bottom of the cooled pie shell; chill while making the pudding mixture.
Combine the 1 cup granulated sugar, 1/3 cup cornstarch and ¼ teaspoon salt in a medium sized saucepan. Gradually add the 3 cups 2% or whole milk and stir until smooth. Bring to a boil over medium heat, stirring constantly and cook for 2 minutes.
Remove from heat briefly; in a large mixing bowl, whisk ½ cup of the hot milk mixture into the 3 egg yolks, beaten. Return the yolk mixture to rest of the hot milk mixture in the saucepan.
Cook on low heat until mixture boils and is thick enough to hold on a spoon, about 4-5 minutes. Pour the pudding mixture through a fine mesh strainer into large bowl, if desired to remove any possible large lumps that formed when cooking.
Add in the 1 ½ teaspoons vanilla extract and 1 Tablespoon unsalted butter. Stir in 1 cup of the coconut and pour over the chocolate mixture in the pie shell.
Place parchment paper or plastic wrap directly over the pudding layer on top to prevent a crust from forming; chill at least 3 hours.
When ready to serve, whip the remaining whipping cream (1 1/2 cups) with the ¼ cup powdered sugar until soft peaks form. Spread or pipe onto top of pie; sprinkle with remaining 1 cup coconut on top.