Preheat oven to 350°F. Line two baking sheets with parchment paper.
In a medium bowl, whisk together flour, baking powder, baking soda, and salt. Set aside.
In a stand mixer, beat softened butter and sugar on medium speed for 2-3 minutes until light and fluffy. Scrape down the sides.
Add the egg, vanilla, lemon zest, and lemon juice. Mix until smooth and pale yellow. Add gel food coloring if desired.
Alternate adding the dry ingredients and buttermilk in three additions, starting and ending with the dry ingredients. Mix just until combined. Do not overmix.
Using a medium cookie scoop, drop batter onto prepared baking sheets, spacing 2 inches apart.
Bake for 10-12 minutes, until tops spring back lightly and edges are just golden. Do not overbake.
Cool on the baking sheet for 5 minutes, then transfer to a wire rack to cool completely.
In a clean bowl, beat softened cream cheese and butter until smooth. Add powdered sugar, lemon zest, lemon juice, and salt. Beat until light and fluffy.
Match cookies in pairs. Pipe or spread 2 tablespoons of filling onto the flat side of one cookie, top with the second cookie, and gently press together.