Preheat the oven to 350°F (175°C). Grease and flour two 9-inch round cake pans.
In a medium bowl, whisk together the flour, baking powder, baking soda, and salt.
In a large bowl, cream the softened butter and granulated sugar until light and fluffy.
Add the eggs one at a time, mixing well after each addition.
Stir in the vanilla extract, buttermilk, and lemon zest until combined.
Gradually add the dry ingredients to the wet mixture, mixing until just combined.
Gently fold in the blueberries.
In another bowl, beat the cream cheese until smooth.
Add the powdered sugar, vanilla extract, eggs, and lemon juice, mixing until creamy and well combined.
Divide the cake batter evenly between the two prepared pans.
Pour the cheesecake mixture over the batter in each pan and swirl slightly with a knife.
Bake for 30-35 minutes or until a toothpick inserted in the center comes out clean.
Allow the cakes to cool in the pans for 10 minutes before transferring them to a wire rack to cool completely.
For the blueberry topping, combine the blueberries, granulated sugar, cornstarch, lemon juice, and water in a saucepan over medium heat.
Cook for about 5-7 minutes, stirring gently until the blueberries start to burst and the mixture thickens.
Remove from heat and let cool.
Once the cakes are completely cooled, layer them with the blueberry topping in between and on top.
Serve chilled or at room temperature.