Position racks in the middle and lower third of the oven; preheat to 325 degrees F. Butter the bottom and side of a 9-inch springform pan; wrap the outside of the pan with foil to catch any drips.
Make the crust: Melt the butter and semisweet chocolate in a small saucepan over medium heat, stirring; let cool slightly. Stir in the sugar and eggs until combined. Stir in the flour, cocoa powder, baking powder and salt until smooth and shiny. Spread in the prepared pan and bake until the top is set and no longer shiny, 10 to 15 minutes. Transfer to a rack and let cool.
Fill a shallow baking dish halfway with water and set on the lower oven rack. Make the filling: Combine the milk chocolate and 1/2 cup heavy cream in a medium microwave-safe bowl. Microwave in 30-second intervals, stirring, until melted and smooth; set aside. Beat the cream cheese and sugar in a large bowl with a mixer on medium-high speed until smooth and fluffy, about 2 minutes. Reduce the mixer speed to low and beat in the eggs, one at a time, until just combined. Beat in the remaining 1/2 cup heavy cream and the vanilla. Add the melted chocolate mixture in two batches, beating until just combined. Stir a few times with a rubber spatula to make sure the chocolate is fully incorporated.
Pour the filling over the crust. Bake on the middle oven rack (directly over the baking dish of water) until the cheesecake is puffed and the edge is set, about 1 hour 15 minutes. (The center will still be very jiggly.) Transfer to a rack and let cool to room temperature, then cover with plastic wrap and refrigerate until cold and set, at least 6 hours or overnight.
Remove the cheesecake from the refrigerator about 1 hour before serving. Run a thin knife or offset spatula around the edge of the pan and remove the springform ring. Grate half of the white chocolate over the cheesecake, then use a vegetable peeler to shave the rest on top. Run a knife under hot water and dry well before slicing.