Soak the cashew nuts in a bowl of water for 4 hours. Overnight is best. Then gently rub each cashew nut to get rid of any extra skin. Rinse and drain on a colander.
Grind the cashew nuts, sugar, egg white and rose water together to a fine, smooth & thick paste. Do not add any water.
Transfer the paste to a wide, heavy based pan or kadai (this is a pre requisite or you may end up burning the marzipan if you use flimsy pans) and cook it on a medium low heat stirring every now and then to prevent scorching.
Approximately 20 minutes later the paste will begin to thicken from a loose, runny one to thick, condensed milk like consistency. Continue to stir until the mixture thickens. Reduce the heat to low
About 35-40 minutes later you will notice that the mixture begins to leave the sides of the pan and will come together in a mass which will resemble a ball of dough (chapathi dough). Check for readiness by taking a small portion of the mixture and rolling it between your thumb and index fingers. If the mixture is no longer sticky it is ready.
Transfer the mixture onto a lightly greased plate. Add the drops of almond or vanilla extract and let the mixture cool slightly (don't let it cool completely). Grease the moulds lightly with butter or oil
When the mixture is cool enough to handle, lightly grease your palm with butter or a drop of oil and knead it into a smooth and pliable dough ball free of cracks.
Pinch out small portions of the dough and roll them into smooth marble sized balls (approximately) and fill the moulds and press gently. Remove excess dough and level off with a dab of butter to achieve smooth surfaces. Continue till all the dough is used up. (see note#6)
Keep the moulds to dry for 30-40 minutes or till they the marzipan feels cool to the touch. Then gently twist the moulds and pop the marzipan shapes out. Serve!