Preheat oven to 350°F. Line a 9 x 9 baking pan with parchment paper. Let the ends hang over the sides a bit to use as "handles" when you pull them out later. Set aside.
In a large mixing bowl, whisk together the oats, flour, coconut sugar, baking powder, cinnamon, and salt.
Add the coconut oil and almond butter to the mixture. With a spatula start to mix and then, using your clean hands, squeeze the mixture between your fingers to incorporate the oil and almond butter until a crumb is formed. You could try using a pastry cutter, but I find it easier to just get in there with your hands.
Test the mixture to make sure it stays together. Press a small amount between two fingers - if it crumbles right away, you need more liquid. Stir in ¼ cup of non-dairy milk and check it again. Add another ¼ cup of milk, if needed. The mixture will still look crumbly, but should hold together when pressed.
Scoop out ½ cup of the mixture and set aside. Transfer the remaining mixture to your prepared baking pan and press down evenly. I like to put a piece of parchment on top and then press down with either my hands or a glass or something with a flat bottom to help get the mixture even.
Pour the cranberry sauce on top and spread out evenly.
Crumble the reserved ½ cup of oat mixture all over the top.
Bake for 35 to 40 minutes until the edges and top turn golden brown and the filling is thick and bubbling.
Run a sharp knife along the edges of the pan while it's still warm to loosen the bars from the sides. Let them cool completely in the pan on a wire cooling rack, about 2 hours. (You can speed up this process by placing them in the fridge after about 30 minutes).
Once cool, using the parchment "handles", remove the entire slab. Cut into squares or bars. Sprinkle with powdered sugar if desired.