Prepare the Stracciatella (Chocolate Shards)
Melt the chocolates and butter in a microwave on low power for 30 second increments, stirring in between sessions until melted and smooth.
Transfer to a pastry or Ziploc bag and seal; pressing out as much air as possible; keeping warm until ready to use. I put the bag in to a glass of hot water to keep it warm until the gelato is ready.
Make the Gelato
In a medium saucepan bring the milk and half and half to a simmer.
Combine the sugar, cocoa, and cornstarch into a bowl and whisk in the wine reduction.
Scrape the sugar and wine mixture into the hot milk. Cook, stirring constantly until the mixture thickens and bubbles a little at the edges. Stir and cook for 2 minutes longer.
Pour the mixture into a clean bowl and cover the surface of the mixture with plastic wrap. Chill without stirring until very cold to the touch; minimum 90 minutes. (I put mine into the freezer for about 45 minutes to speed it up a bit).
Freeze gelato according to the instructions with your ice cream maker. When the ice cream has churned and the consistency is a bit firmer than soft serve, remove the chocolate mixture from the warm water and snip the tip of the bag about an eighth of an inch; no more than a quarter of an inch. Drizzle the chocolate into the ice cream as it is churning (save a bit for the top and for sundaes if desired) and allow it to distribute throughout.
Continue churning until desired consistency and then transfer the mixture to a freezer safe container and let freeze for at least 4 hours before serving; preferably overnight.