Preheat the oven to 350°F (175°C). Grease and flour two 9-inch round cake pans.
In a large mixing bowl, cream together the butter and sugar until light and fluffy.
Add the eggs one at a time, mixing well after each addition.
Stir in the buttermilk and vanilla extract.
In another bowl, whisk together the flour, baking powder, baking soda, salt, and lemon zest. Gradually add to the wet ingredients and mix until just combined.
Gently fold in the blueberries.
Divide the batter evenly between the prepared cake pans and smooth the tops.
Bake for 25-30 minutes or until a toothpick inserted in the center comes out clean.
Let the cakes cool in the pans for 10 minutes before transferring to a wire rack to cool completely.
For the frosting, beat the cream cheese and butter together until smooth. Gradually add the powdered sugar, lemon juice, and lemon zest, mixing until well combined.
Once the cakes are completely cooled, spread frosting between the cake layers and over the top and sides of the cake.
Decorate with additional blueberries if desired.
Slice and serve.