Preheat your oven to 350°F. Grease two 9-inch heart shaped cake pans and lightly dust them with flour. This will help the cakes release cleanly when they're done baking.
In a mixing bowl, combine the flour, sugar, baking soda and salt. In a separate bowl, whisk together the buttermilk, butter, eggs, food coloring and cocoa powder.
Gradually mix the wet ingredients into the dry ingredients until just combined. Be careful not to overmix. The batter should be smooth with no lumps.
Divide the batter evenly between the two prepared pans. Bake for 30-35 minutes, until a toothpick inserted in the center comes out clean.
Allow the cakes to cool in their pans for 10 minutes before inverting them onto a wire rack to finish cooling.
For frosting
While the cakes cool, make the frosting. Beat together 1 cup butter, 3 cups powdered sugar, 1 teaspoon vanilla and 2-3 tablespoons milk until smooth and spreadable.