Place an oven rack in the center of the oven and heat to 350°F (175°C). Grease two 8-inch (20-cm) round cake pans, line the bottoms with parchment paper, and lightly grease the parchment.
Whisk the flour, cocoa powder, sugar, baking powder, baking soda, and salt together in a large bowl. Add the eggs, milk, oil, and vanilla. Beat with a hand mixer on medium speed for 2 minutes, scraping the bowl once. Carefully mix in the hot coffee or hot water; the batter will be thin.
Divide the batter evenly between the prepared pans. Bake for 26 to 30 minutes, until a toothpick inserted in the center comes out clean or with a few moist crumbs. Cool in the pans for 10 minutes, then turn the cakes onto a wire rack, remove the parchment, and cool completely.
While the cakes cool, make the cherry filling. Put 1/2 cup (120 ml) of the reserved cherry liquid, the sugar, and cornstarch in a small saucepan. Whisk until smooth. Cook over medium heat, whisking often, until the mixture bubbles and becomes glossy and thick, about 3 to 5 minutes. Remove from the heat, fold in the drained cherries, and cool completely.
In a small bowl, combine the remaining 1/2 cup (120 ml) reserved cherry liquid with 2 tablespoons (30 ml) kirsch, if using. Reserve the final 1 tablespoon (15 ml) kirsch for the whipped cream, or use cherry juice instead.
For the whipped cream, beat the cold cream, powdered sugar, vanilla, and remaining 1 tablespoon (15 ml) kirsch or cherry juice in a chilled bowl. Beat on medium-high until medium-stiff peaks form. Stop as soon as the cream holds its shape; overbeating can make it grainy.
Level the cooled cake layers with a serrated knife if they have a large dome. Put one layer on a serving plate. Brush with half the cherry-kirsch liquid. Spread about 1 cup of whipped cream over the layer, leaving a 1/2-inch (1-cm) border. Spoon the cooled cherry filling over the cream.
Place the second cake layer on top and brush with the remaining cherry-kirsch liquid. Spread the remaining whipped cream over the top and sides of the cake. Press chocolate shavings onto the sides and scatter extra shavings over the top. Garnish with fresh cherries, if using.
Refrigerate the cake for at least 1 hour before slicing so the layers settle. Serve chilled with a sharp knife wiped clean between cuts.