Preheat oven to 350°F (175°C). Line a muffin pan with paper liners.
In a medium bowl, whisk together 1 cup coconut milk, 1/3 cup canola oil, 1 teaspoon vanilla extract, and 3/4 cup sugar until combined.
In a separate bowl, sift together 1 cup all-purpose flour, 2 tablespoons almond meal, 1/3 cup cocoa powder, 3/4 teaspoon baking soda, 1/2 teaspoon baking powder, and 1/4 teaspoon salt.
Make a well in the center of the dry ingredients, pour in the coconut milk mixture, and stir with a spatula until the batter is just smooth and no large streaks of flour remain. Do not overmix.
Portion the batter into the prepared liners: about 3 tablespoons per regular cupcake (fill liners no more than 2/3 full). For mini cupcakes, use 1 tablespoon batter each.
Bake regular cupcakes 18–20 minutes (minis 10–12 minutes), or until a toothpick inserted into the center comes out clean. Remove from oven.
Transfer cupcakes to a wire rack and let cool completely before frosting.
For the frosting, in a small bowl whisk together 1/4 cup milk (or soymilk) and 1/4 cup malted milk powder until smooth; set aside.
In the bowl of a stand mixer (or with a hand mixer), beat 1/2 cup butter or margarine (room temperature) until smooth and fluffy, about 2–3 minutes.
Add 3 tablespoons cocoa powder and 1 cup confectioners’ sugar to the butter and beat until combined.
Add 1/2 teaspoon vanilla extract and the malted milk mixture, mixing until incorporated.
Continue adding the remaining confectioners’ sugar 1/2 cup at a time, mixing well after each addition, until you have used a total of 3 to 4 cups confectioners’ sugar and the frosting reaches a spreadable or pipeable consistency.
Beat the frosting until light and fluffy, about 3–5 minutes after all sugar is added.
Spread or pipe the frosting onto the completely cooled cupcakes.