Cut brioche or challah into 1-inch cubes. Butter a 9x13 inch baking dish generously. Spread half the bread cubes evenly in the prepared dish.
Beat softened cream cheese with powdered sugar and vanilla until smooth. Drop spoonfuls of cream cheese mixture over the bread layer. Scatter half the blueberries over the cream cheese. Top with remaining bread cubes and blueberries. Press down gently so everything fits.
Whisk together eggs, milk, heavy cream, granulated sugar, vanilla extract, cinnamon, and salt in a large bowl until well combined. Pour custard mixture evenly over the bread. Press bread down with a spatula so it soaks up the liquid. Cover tightly with plastic wrap and refrigerate overnight, 8-24 hours.
Remove casserole from refrigerator 30 minutes before baking. Preheat oven to 350°F. Remove plastic wrap and cover pan tightly with aluminum foil. Bake covered for 30 minutes. Remove foil and bake for another 25-30 minutes until golden brown and puffed. Center should be set with internal temperature of 165°F. Let rest for 10 minutes. Dust with powdered sugar, drizzle with warm maple syrup, add whipped cream if desired, and scatter extra fresh blueberries on top. Serve hot.