Heat the olive oil in a 5-quart / 4.7 L Dutch oven or wide pot over medium heat.
Add the onion and cook for 4 to 5 minutes, stirring, until soft and translucent.
Add the garlic and cook for 30 seconds, until fragrant.
Add the shredded cabbage and grated carrot. Stir well to coat in the oil. It will look like a lot, but it cooks down fast.
Cook the cabbage for 8 to 10 minutes, stirring occasionally, until it wilts down to about half its size and starts to turn golden at the edges.
Add the rice and stir for 1 minute to coat it in the oil and cabbage juices.
Pour in the stock or water, add the salt and pepper, and bring to a boil.
Lower the heat, cover, and simmer for 18 to 20 minutes. Check at 15 minutes; if the pot looks dry but the rice is still firm, stir in a splash more water.
Take the pot off the heat once the rice is tender and most of the liquid is absorbed. If the bottom starts to catch before the rice is done, lower the heat further and add a little water.
Stir in the lemon juice, lemon zest, and dill. Taste and adjust the salt.
Cover and let it rest for 5 minutes off the heat, then serve warm with crumbled feta on top if you like.