Grease an 8 x 8 inch deep square pan with butter. In a small bowl, stir together the sugar, cinnamon, and orange zest.
Tear the bread into bite sized hunks and place a single layer at the bottom of the pan. Sprinkle with 1/3 of the cinnamon sugar mixture. Add another layer of bread and sprinkle with another 1/3 of the cinnamon sugar. Finish with a final layer of bread and the rest of the cinnamon sugar.
Whisk together the eggs, milk, and vanilla. Pour the mixture evenly over the bread. Cover and refrigerate overnight or for at least two hours.
When ready to bake, remove the casserole from the fridge and allow to come to room temperature while the oven preheats to 375 degrees.
Bake for 30-35 minutes or until golden brown on top and center is no longer jiggly.
Meanwhile, whisk together the cream cheese, vanilla, powder sugar, and orange juice until smooth. Drizzle, spoon, or pipe the frosting onto the warm casserole. Serve immediately.