Preheat oven to 350˚F and line muffin pan with paper or foil liners.
Whisk together the soy milk and vinegar in a large bowl, and set aside for a few minutes to curdle
Add the sugar, oil, and vanilla extract, and other extract, if using, to the soy milk mixture and beat till foamy.
In a separate bowl, sift together the flour, cocoa powder, baking soda, baking powder, and salt.
Add in two batches to wet ingredients and beat till no large lumps remain (a few tiny lumps are okay).
Pour into liners, filling three-quarters of the way. Bake 18 to 20 minutes, until a toothpick inserted into the center comes out clean. Transfer to cooling rack and let cool completely.
Chill your coconut milk in the refrigerator overnight.
The next day, chill a large mixing bowl 10 minutes before whipping.
Remove the coconut milk from the fridge and remove the lid. Scrape out the top, thickened cream and leave the liquid behind (you could use it in a smoothie).
Place hardened cream in your chilled mixing bowl. Beat for 30 seconds with a mixer until creamy.
Then add vanilla and icing sugar and mix until creamy and smooth – taste and adjust sweetness as needed.