Cut squash in half. Scoop out the seeds. Lightly coat the inside with olive oil. Roast at 400°F until fork tender, about 45 to 60 minutes. Allow to cool and scoop the flesh out of the shell. (Note: This step can be done up to 2 days in advance.)
Cover rice with water in saucepan and bring to a boil. Remove from heat. Let soak one hour, then drain.
Heat olive oil in a large skillet. Add onion, carrot, and celery and sauté over medium heat until lightly browned. Add the mushrooms and cook until the liquid is evaporated.
In a large bowl combine rice, mushroom mixture, squash, and all remaining ingredients. Turn into a non-stick 2-quart casserole dish. Cover and bake at 350 degrees for 1 1/4 hours. Remove cover and bake uncovered an additional 20 minutes.