Preheat the oven to 350 degrees Fahrenheit and prepare three 9-inch cake pans with parchment paper circles in the bottom. Butter and flour the bottom and sides of the cake pans making sure you shake off any excess flour. Set aside.
In a small skillet over medium-low heat melt the butter. Once melted, add the pecans and the sugar. Cook, stirring frequently for about 3-4 minutes or until fragrant and lightly toasted. Spread the pecans on a baking sheet lined with parchment paper or silicone baking mat. Set aside to cool.
Combine the buttermilk and the milk together in a small bowl or measuring cup. Set aside.
Whisk together the flour, baking powder, baking soda and salt in a mixing bowl.
Using a handheld or stand mixer fitted with the paddle attachment, beat the butter, sugar and vanilla together on medium-high speed until light and fluffy. Add the eggs one at a time, allowing each to incorporate before adding the next one. Scrape down the sides and the bottom of the bowl with a rubber spatula as needed.
With the mixer on low speed, add about 1/3 of the flour mixture, alternating with 1/3 of the the milk mixture. Mix until just combined. Repeat the process until all the flour mixture and milk mixture have been added.
With the help of a spatula, fold in the pecans. Mix to combine.
Divide batter evenly between the three prepared cake pans. Bake the cakes for about 25 - 28 minutes or until a toothpick inserted in the center comes out clean.
Remove from the oven and allow them to cool in the pans for about 15 minutes. To remove the cakes from the pans, run a knife around the edges of the cake and invert. Place the cakes on a wire rack and allow the to cool completely before assembling.
Using a handheld or stand mixer fitted with the paddle attachment beat the butter and the cream cheese until smooth. Add the vanilla and gradually add the powdered sugar. Mix until fluffy and smooth.