Heat the oil in a large, heavy-based saucepan or flameproof casserole dish. Add the onions and cook over a medium heat for 10 minutes. Transfer to a bowl.
Add the pork, garlic, cardamom and cumin seeds. Cook, stirring often, for 5 minutes until the meat has broken up and changed colour. Return about half the onions to the pan, pour in the stock and bring back to the boil. Reduce the heat, cover the pan and simmer for 15 minutes.
Stir in the potatoes and bring back to simmering point, then cover and cook for about 20 minutes until the potatoes are tender.
Meanwhile, blend the cornflour with about ½ cup (130 g) of the yogurt and the ground almonds to make a paste. Stir this mixture into the curry and bring just to the boil, stirring. Reduce the heat and simmer for 1 minute until slightly thickened. Season to taste.
Fold the spinach leaves through the korma, reserving a few small leaves for garnishing, until they are just wilted and bright green. Mix the toasted flaked almonds with the remaining onions. Serve the curry drizzled with the remaining yogurt and topped with the almonds, onions and reserved spinach.