Begin by spraying a 9x13-inch baking dish with cooking spray and placing the cubed bread into the baking dish before setting it aside.
In a large mixing bowl, add the eggs, milk, heavy cream, sugar, brown sugar, vanilla, cinnamon, and salt and whisk together well until combined. It's okay if some of the cinnamon floats to the top.
Pour the mixture over the bread cubes in the baking dish.
Use a large spoon and press the bread into the custard mixture so it starts to soak it up. Cover the baking dish with plastic wrap and place it in the refrigerator to soak for at least 6 hours, or overnight.
When ready to bake, preheat the oven to 350°F and remove the plastic wrap from the dish.
Whisk together the melted butter, brown sugar, and cinnamon in a mixing bowl, until smooth.
Drizzle this topping all over the top of the casserole.
Cover the baking dish with tin foil and bake in the oven for 30 minutes. Remove the foil and bake for another 25-30 minutes, or until the top is golden brown and you can insert a knife into the center and it comes out clean.
Let the casserole cool for 15 minutes before slicing and serving with a dusting of powdered sugar and maple syrup, or your other favorite toppings.