Preheat the oven to 180°C/350°F/Gas Mark 4.
Grease and line a 10-inch springform baking tin with parchment paper, then set aside.
Place the cornmeal, gluten-free flour, cinnamon, nutmeg and pink salt into a large heatproof mixing bowl.
Use a whisk to combine the dry ingredients.Make a well in the centre of the dry ingredients and set aside.
Meanwhile, add the coconut milk, water, coconut sugar, vanilla and dairy free butter to a medium sized saucepan.
Heat the mixture over medium heat, stirring occasionally until the butter has completely melted.
Gradually pour the warm coconut milk mixture into the dry ingredients, whisking continuously to prevent lumps from forming.
Continue whisking until everything is thoroughly combined.
Stir in the raisins, if using.
Pour the cornmeal mixture into the prepared baking tin and transfer to the oven.
While the pudding is baking, prepare the soft-top custard by adding the coconut milk and coconut sugar to a saucepan.
Simmer over medium heat for approximately 5 minutes, stirring frequently, then remove from the heat.
After the pudding has baked for 15 minutes, carefully remove it from the oven.
Pour the coconut custard evenly over the surface of the pudding, then return it to the oven. If using a springform tin, you may want to place a baking tray underneath to catch any excess liquid.
Continue baking for approximately 45–50 minutes. The top should still be soft and slightly gooey (this is completely normal), while the pudding underneath should be firm.
Remove the pudding from the oven and allow it to cool before carefully removing it from the baking tin.
Slice and enjoy!