Preheat oven to 350°F (177°C). Grease and line three 8 or 9-inch round cake pans with parchment.
Rub lemon zest into granulated sugar. Cream butter and sugars together until light and fluffy.
Mix in eggs and vanilla. If using oil, add it before eggs.
Whisk dry ingredients in a separate bowl. Gradually add to wet mixture.
Add buttermilk, lemon juice, and zest. Fold in flour-coated blueberries.
Divide batter evenly in pans. Bake 21–25 minutes or until a toothpick comes out clean.
Cool in pans 15 minutes. Transfer to wire racks to cool completely.
Make Frosting: Beat cream cheese and butter. Add sugar, cream, vanilla, and salt. Beat until fluffy.
Assemble: Level cake layers. Frost between layers and around sides. Chill before serving.