In a glass, add the milk and vinegar. Mix well and keep aside for at least 5 minutes to make buttermilk.
In a separate bowl, add the self-raising flour, baking soda and cinnamon powder. Whisk together until evenly combined and keep aside.
In a large mixing bowl, beat the peanut butter and oil until combined and creamy.
Add the sugar, yogurt and vanilla extract, and beat again until well combined.
Add the dry ingredients in 3 batches, alternating with the buttermilk in 2 batches, beginning and ending with the dry ingredients. Fold gently until just combined — do not over mix. Keep aside.
Prepare the chocolate mixture. In a small container, add the hot milk and instant coffee (coffee is optional) and mix well. Pour this over the dark chocolate and leave it for a minute so the chocolate softens. Mix until smooth and fully melted, with no lumps.
Take about one-third of the batter into a separate bowl. Add the melted chocolate mixture to it and mix until combined.
Spoon about one-third of the plain batter into the bottom of the prepared loaf pan and spread it evenly to cover the base.
On top, add both batters a teaspoon at a time in a checkered pattern — plain, chocolate, plain, chocolate — alternating all over to build up good swirls.
Swirl through the batter with a knife to create the marble effect, then gently tap the pan on the countertop to release any air bubbles.
Bake in a preheated oven at 175°C/350°F for 45–50 minutes, or until an inserted skewer comes out clean.
Let the cake cool completely on a wire rack before slicing.