Preheat oven to 340°F (170°C).
Line a mini cupcake pan with liners.
In a bowl, mix milk and lemon juice. Let sit for 2–3 minutes.
Add melted butter, sugar, and salt. Mix well.
Add flour, baking powder, and baking soda.
Mix until smooth.
Add green food coloring and mix to desired shade.
Fold in chopped pistachios.
Fill cupcake liners halfway with batter.
Bake for 12–13 minutes, then reduce temperature to 320°F (160°C) and bake another 10–12 minutes.
Remove and let cool completely.
For the buttercream, beat butter until smooth.
Add powdered sugar gradually and mix until combined.
Add lemon juice and rose water.
Beat until smooth and fluffy.
Add pink food coloring and mix until evenly colored.
Transfer buttercream to a piping bag.
Pipe frosting onto cooled cupcakes in a circular motion.
Sprinkle with chopped pistachios and add dried rose buds if desired.