Before starting, make the flax egg by mixing together the ground flaxseed and water and setting it aside for 5 minutes until thickened.
Add the room-temperature vegan butter and sugar to a bowl and use an electric mixer to cream together for 1-2 minutes until fluffy. Once creamed, mix in the vanilla bean paste, rose water, and flax egg.
Next, add the all-purpose flour, baking powder, and salt to the bowl and mix everything into a thick cookie dough.
Remove the cookie dough from the bowl and place it between two sheets of parchment paper. Use a rolling pin to roll the cookie dough between the two sheets of parchment paper into a rectangle that is about ⅓ inch thick in height.
Once the dough is rolled out, use heart-shaped cookie cutters to cut out the cookies. Take the cookie scraps and continue rolling them out and cutting out cookies until you have used all of the cookie dough.
Add the heart-shaped cookies to a parchment-lined tray making sure to keep about 1 inch of space between each cookie. Add the tray of cookies to the freezer for 10-15 minutes to solidify a bit before baking
While the tray of cookies is in the freezer, preheat the oven to 350F. Once the oven has preheated, remove the cookies and add them to the oven to bake for 12-14 minutes or until they are cooked through and just beginning to brown on the bottoms.
Let the cookies cool on the baking sheet for at least 5 minutes, then move to a wire rack to continue cooling completely before making the icing (if they are not cooled, the icing will just melt off).