Preheat oven to 350 degrees F. Add cupcake liners to the muffin tin.
In a bowl, combine flour, baking powder, and 1/2 tsp salt.
In another large bowl, beat together the 1/2 cup softened butter and granulated sugar on medium-high speed for 1 minute. Pause to scrape the bowl, and then add in the eggs, buttermilk, 1/4 cup lemon juice, and zest of two lemons. Combine completely.
On low speed, add in the flour mixture, about one cup at a time. Once fully combined, gently fold in the blueberries.
Scoop 3 Tbsp of mixture into each cupcake liner.
Bake for 20 minutes or until a toothpick inserted into the middle comes out clean.
To make the frosting, mix the cream cheese and 1/2 cup butter for 1-2 minutes on medium-high speed.
Slowly add in the powdered sugar until fully combined.
Pause to scrape the sides of the bowl and add in the 2 Tbsp lemon juice, zest, and pinch of salt. For a stronger lemon flavor, add in more lemon zest. I like to zest my lemons and then chop the zest even smaller for a nice texture.
Mix again until frosting is light and smooth. Transfer to a piping bag.
Remove cupcakes from the oven and allow to cool on a rack for at least 30 minutes before frosting.
Top cupcakes with blueberries or lemon zest if desired. Enjoy!