Heat your oven to 350°F (175°C). While it warms up, grease your cake pan(s) and dust them lightly with flour. Set them aside.
In a medium bowl, mix together the all-purpose flour, cake flour, baking powder, baking soda, and salt until everything is evenly combined.
In a large bowl, beat the softened butter and sugar together until the mixture looks pale and fluffy. This is important for getting a soft, light cake.
Add the eggs one at a time, beating well after each one. Once the eggs are fully mixed in, add the Mexican vanilla extract.
Slowly add the dry ingredients to the butter mixture in three additions, alternating with the buttermilk. Start and finish with the dry ingredients. Mix only until the batter is smooth.
Pour the batter evenly into the prepared pan(s) and place in the oven. Bake for 35–40 minutes, until a toothpick inserted in the center comes out clean.
Take the cake out of the oven and let it cool in the pan for about 10 minutes. Then remove it from the pan and place it on a wire rack to cool completely.
To frost, beat the cream cheese and butter until smooth. Gradually mix in the powdered sugar, salt, and vanilla until creamy. Spread the frosting evenly over the cooled cake.