To a small saucepan, add the cranberries, brown sugar, maple syrup, orange zest and juice and the ginger, cardamom and cinnamon if using. Cover with 375ml (1½ cups) of water.
Set over high heat and bring to a boil. Reduce the heat to medium-low and simmer, uncovered, until the cranberries are plump and tender and the mixture is syrupy - about 15 minutes.
Using a stick blender, blend about ¼ of the cranberries to break them down slightly (see notes).
In a small bowl, whisk together the cornstarch with 60ml (¼ cup) until well combined. Stream the slurry into the sauce and stir to combine.
Allow the cranberry sauce to simmer for about 5 more minutes, just until the sauce is thick and viscous. Stir in the balsamic vinegar. Remove from the heat and allow to come to room temperature before serving.
Notes
If you do not have a stick blender, you can also ladle ¼ of the mixture into a standard blender and blend until smooth. Return to the pan and stir to combine. If you don't have or prefer not to use a blender, this step can be skipped - just note that the finished sauce will not be as smooth.