Set a rack in the middle of the oven and preheat to 325 degrees F. Spray 2 (9-inch) round pans with nonstick spray, line the bottom of the pan with a parchment paper round, spray the parchment with nonstick spray, and set aside.
Whisk the flours, cocoa, baking soda, and salt together in a bowl and set aside. Whisk the buttermilk, food coloring, vinegar, and vanilla together in a small bowl and set aside.
Combine the brown sugar and butter in the bowl of a stand mixer with the paddle attachment and cream on medium speed until lightened in color, 2 minutes. Stop the mixer and scrape down the sides of the bowl with a spatula. Return the mixer to medium speed and slowly add the eggs and beat until they are fully incorporated.
With the mixer on low, add the flour mixture in 3 installments, alternating with the buttermilk mixture, beginning and ending with the flour mixture. Stop the mixer and scrape down the sides of the bowl between each installment. Mix on low speed until smooth, 30 to 45 seconds.
Divide the batter evenly between the prepared pans and bake until the cake springs back when pressed or reaches an internal temperature of 205 degrees F, 30 to 35 minutes.
Cool in the pans on a rack for 10 minutes, and then remove the cake from the pans and cool completely, about 1 hour, before frosting.
Combine the cream cheese and butter on medium speed, just until blended, in the bowl of a stand mixer fitted with the paddle attachment. Stop and scrape down the sides of the bowl. Add the vanilla and salt and beat until combined. With the speed on low, add the powdered sugar in 4 batches, beating until smooth between each addition. Refrigerate for 5 to 10 minutes before using.
Recipe courtesy of Alton Brown, 2011