Grind the coconut with the water until you have a coarse coconut paste.
Beat the eggs until very light and fluffy, about 10 minutes with an electric mixer. Add the butter and beat again for another 2 minutes.
In a large bowl, combine the semolina, salt, baking powder and sugar. Add coconut to this and mix well.
Add beaten eggs and ground cardamom. Mix well. Cover and leave to rest overnight or at least 6 hours.
Preheat oven to 350 F.
Spray a square baking dish with non stick spray.
Pour batter into prepared baking dish. Garnish the top with the raisins and almonds.
Bake for 40 minutes, until a toothpick inserted comes out clean.
Garnish with edible flowers, if desired.