To make the cakes, position racks in the upper middle and lower middle of the oven, and preheat the oven to 350 degrees F (325 degrees F if using a convection oven). Lightly grease (preferably with Pam) 2 canoe baking pans. (Similar to muffin tins, these pans have 8 oblong cups with rounded bottoms. You can buy them in gourmet equipment or bakeware shops or online.)
Sift the flour, cocoa powder, and salt together.
Using an electric mixer fitted with the whisk attachment, beat the sugar and oil on medium speed until blended. Add the eggs, vanilla, and food coloring and beat on medium speed for 1 minute, until blended. Add a third of the flour mixture, and beat on low speed until just blended. Add half of the buttermilk and mix on low speed until just blended. Repeat with the remaining flour mixture and buttermilk, ending with the last third of the flour mixture, mixing until the dough just comes together.
Stir the vinegar and baking soda together in a small bowl. Add to the batter and stir using a rubber spatula until just blended.
Divide the batter evenly between the prepared baking pans. Bake for 17 to 19 minutes (14 to 17 minutes if using a convection oven), switching the baking pans' positions halfway through baking, until the tops feel slightly firm and a toothpick inserted in the center of one cake comes out clean. Transfer the baking pans to wire racks and let cool completely.
To make the filling, using an electric mixer fitted with the paddle attachment, beat the cream cheese, goat cheese, and butter on medium speed for about 2 minutes, until soft and smooth. Add the confectioners' sugar, vanilla, and salt, and beat on medium-high speed for 2 minutes, until smooth, light, and fluffy.
Scrape three-quarters of the filling into a piping bag fitted with a 1/4-inch plain tip, leaving the remaining quarter of the icing in the bowl for use in the next step.
Because the round top of these cakes actually becomes the bottom, you'll want to trim off this rounded part using a serrated knife. To fill, hold a cake in one hand, flat side up, and push the tip of the pastry bag into the flat side of the cake about 1 inch from the end. Squeeze about 1 tablespoon of filling into the cake. Repeat 2 more times, evenly spacing the filling across the cake. Using a small spatula, cover the bottom with a thin layer of the remaining icing. Dip the bottom into the pecans or coconut, and arrange, rounded side up, on a serving plate. Repeat with the remaining cakes. Serve immediately or store in an airtight container in the refrigerator for up to 3 days.