Preheat oven to 375°F. Generously grease a standard donut pan with nonstick spray or butter.
In a large bowl, whisk together flour, sugar, baking powder, and salt. Set aside.
In a separate bowl, whisk together milk, eggs, melted butter, vanilla, and lemon zest (if using).
Pour wet ingredients into dry ingredients and fold gently until just combined. Don't overmix—a few flour streaks are fine. Gently fold in blueberries.
Transfer batter to a piping bag or zip-top bag with corner snipped. Pipe into donut pan cavities, filling each two-thirds full.
Bake for 12-15 minutes until tops spring back when pressed. Cool in pan 5 minutes, then transfer to a wire rack to cool completely.
For glaze: Heat blueberries in a small saucepan over medium heat, mashing with a fork until juicy (3-4 minutes). Strain through fine-mesh sieve to remove skins.
Whisk blueberry juice with powdered sugar, milk, and vanilla until smooth. Glaze should be thick but pourable.
Dip top of each cooled donut into glaze, letting excess drip off. Place on wire rack and let glaze set for 10-15 minutes before serving.