Preheat your oven to 175°C (350°F) and grease two 8-inch cake pans, lining them with parchment paper for easy removal
In a medium bowl, whisk together flour, baking powder, baking soda, and salt until evenly combined
In a large bowl, beat the softened butter and sugar together for 3 to 5 minutes until light, fluffy, and pale in color
Add eggs one at a time, mixing well after each addition to ensure a smooth batter
Mix in vanilla extract, lemon zest, and fresh lemon juice to build strong citrus flavor
Pour in the vegetable oil and continue mixing until fully incorporated
Add the dry ingredients in three parts, alternating with buttermilk, starting and ending with dry ingredients
Mix gently after each addition, being careful not to overmix as this can make the cake dense
Toss blueberries with a tablespoon of flour to prevent sinking, then gently fold them into the batter using a spatula
Divide the batter evenly between prepared cake pans and smooth the tops
Tap the pans lightly on the counter to remove any air bubbles
Bake for 30 to 35 minutes or until a toothpick inserted in the center comes out clean
Allow cakes to cool in the pans for 10 minutes before transferring to a cooling rack
Let the cakes cool completely before frosting to avoid melting the frosting
For the frosting, beat cream cheese and butter together until smooth and creamy
Gradually add powdered sugar while mixing on low speed to prevent lumps
Add lemon juice, vanilla extract, and salt, then beat until light, fluffy, and spreadable
Place one cake layer on a serving plate and spread an even layer of frosting
Add the second layer and apply a thin crumb coat to seal in crumbs
Chill the cake for 15 to 20 minutes to set the crumb coat
Apply the final layer of frosting evenly across the top and sides
Garnish with fresh blueberries and lemon slices if desired
Slice and serve once the frosting is set