Warm the milk with the lemon zest (do not let it boil).
In a separate bowl, whisk egg yolks with sugar until pale and fluffy.
Sift the cornstarch and flour together, then mix into the yolk mixture.
Slowly pour the warm (strained) milk into the yolks while whisking.
Return everything to the pot (include the lemon zest if desired) and cook over medium-low heat, stirring constantly, until it thickens (2–3 minutes).
Once thickened, pour into a bowl, cover with plastic wrap (touching the surface), and let cool.
Warm the milk (do not boil).
In a bowl, whisk the egg yolks with the sugar until light and frothy.
Add the sifted flour, cornstarch, and vanilla sugar to the yolk mixture and mix well.
Gradually add the warm milk while whisking. Return to the pot and cook over low heat, stirring until thick.
In another pan, melt the chocolate into the hot cream until smooth and glossy.
Once the pastry cream is ready, pour it into a bowl and stir in the melted chocolate mixture until fully combined.
Cover with plastic wrap directly on the surface and place the bowl in a larger bowl filled with cold water to cool quickly.
Dip Maria cookies briefly into the sweetened milk.
Arrange a layer of cookies in the bottom of a 20 x 20 cm (8 x 8 inch) square dish (preferably Pyrex).
Spread a layer of pastry cream, then another layer of dipped cookies.
Follow with a layer of chocolate pastry cream, and repeat the layering process until all ingredients are used.
Chill in the fridge for at least 1 hour.
Just before serving, dust the top generously with unsweetened cocoa powder.
