Preheat oven to 300 degrees F. Spread cubed bread on a baking sheet and bake 15-20 minutes, until golden and dry. Let cool completely.
In a large skillet, heat butter over medium heat. Add onion, celery, and garlic. Cook for 5-7 minutes, until softened and fragrant.
Stir in poultry seasoning, sage, thyme, salt, and pepper. Cook for 1 minute to bring out the flavors.
In a large bowl, mix toasted bread cubes with cooked vegetables. Add broth gradually until the mixture is moistened but not soggy. Stir in the beaten egg to bind.
Transfer to a sprayed baking dish. Cover with foil and bake at 350 degrees F for 25 minutes. Remove foil and bake an additional 10-15 minutes until the top is crisp and golden.
Serve warm and garnish with chopped parsley if desired.