Boil the cassava in a pan of salted water for 10 to 15 minutes, or until tender. Drain well, then mash with a potato masher or ricer until smooth, and set aside.
Meanwhile, heat the oil in a small pan over a medium heat. Add the mustard and cumin seeds and fry for 20 to 30 seconds, or until the mustard seeds start to pop. Be careful to keep the pan well away from your eyes and face as the mustard seeds pop and splatter.
Add the fennel seeds, onion, and green chiles. Fry for 4 to 5 minutes, or until the onion has softened, and is golden brown.
Add the curry leaves and the garlic and simmer for 45 to 60 seconds, or until just golden brown.
Add the garam masala, milk (use less milk if you are using potatoes and more milk if you are using cassava), cream, and grated coconut, and stir until well combined. Add the milk mixture gradually, as necessary until the mashed potato or cassava is smooth. Season the mixture, to taste, with salt, and freshly ground black pepper.
Bring the mixture to a boil, then stir it into the mash and add the lemon juice, to taste. Serve immediately.
Cooks NoteIf you cannot find cassava (also known as tapioca), use potato instead. Cassava is protected with a wax coating, so it can last for months in your larder.