Preheat the oven to 350°F and prepare a 9x5 inch loaf pan with grease and parchment. Set aside.
In a medium-sized bowl, combine the flour, baking powder, baking soda, and salt. Whisk to mix and set to the side.
In a large bowl with a hand mixer or in the bowl of a stand mixer with a paddle attachment, beat the butter on medium speed until smooth, about 1-2 minutes. Add in the sugar and beat until smooth and the butter looks light and fluffy, about 2-3 minutes. Scrape down the sides of the bowl. With the mixer on low, add in the eggs one at a time. Let each egg mix in smoothly and scrape down the bowl again. Add in the sour cream, lemon juice, lemon zest, and vanilla extract and mix on medium speed and mix fully to combine. The mixture may look a little thick and curdled, but don't worry it will smooth out with the flour.
Gradually add in the flour in three parts with the buttermilk in between at low speed. Add in the blueberries and fold them into the mixture using a rubber spatula. Be gentle when mixing in the blueberries so they won't break.
Add the batter to the prepared pan and bake for about 50-60 minutes. The top of the cake will be golden brown when ready. Let cool completely on a wire rack when done.
Make the icing while the cake is cooling. In a medium-sized bowl with a whisk or in a stand mixer with a whisk attachment, mix together the lemon juice, powdered sugar, and heavy cream or milk. Add in more powdered sugar if looking for a sweeter taste. If you want the icing to be thick, add in the additional heavy cream. Adjust it with powdered sugar and heavy cream to get your desired taste and thickness.
When the cake is completely cool, drizzle icing over the cake to cover it. To get a thicker layer on top, multiple layers of icing may be needed depending on consistency.
Store the cake in an airtight container for up to one week. The cake can be frozen with or without the icing for up to 3 months.