This cannoli poke cake recipe solves the runny-frosting problem that trips up almost every home baker who's tried this dessert. A simple drain-and-chill fix keeps the ricotta-mascarpone topping thick and sliceable every time.
Preheat oven to 350°F. Grease a 9x13-inch pan. Mix cake batter per box directions with eggs, water, and oil. Pour into pan and bake 28-32 minutes until a toothpick comes out clean.
While the cake is warm, poke holes all over the top, 1 inch apart, with a wooden spoon handle. Pour the entire can of condensed milk over the cake, working it into the holes. Cool completely, about 45 minutes.
Drain ricotta in a lined strainer over a bowl, refrigerated, at least 30 minutes.
Beat drained ricotta and cold mascarpone until just smooth, about 30 seconds. Add powdered sugar, cinnamon, and vanilla; mix on low until combined, no more than 30 seconds.
Spread frosting over cooled cake. Sprinkle with mini chocolate chips and dust with powdered sugar. Refrigerate at least 2 hours before slicing.