Chop bread into cubes. If bread is not slightly stale or a day old, bake at 350 for 10 minutes on a baking sheet till slightly dried.
Grease a 9x13 baking pan.
In a large bowl add cream, butter, sugar , milk, eggs, vanilla, cinnamon. Whisk till well combined.
Add bread to the baking dish in an even layer. Pour custard evenly over the bread.
Let sit covered for 1 day in the fridge to let the bread soak up the custard.
In a bowl combine all the topping ingredients and mix till smooth.
Sprinkle over top of the casserole in a even layer.
Bake at 350 degrees for 25 minutes. Then cover and bake for another 35 minutes until French toast is set and bread is golden. Can bake for another 5-10 uncovered to get the topping nice and crisp.
In a bowl beat all the frosting ingredients together until smooth and set aside.
Slice the casserole and pour over the frosting when ready to serve.