Preheat oven to 350 degrees. Arrange cubed bread a single layer on a large baking sheet (or if you don't have an oversized baking sheet, you may need 2). Bake for 20-30 minutes until really well dried. The bread should be very hard and not soft at all.
Once bread is baked and dried out, place bread into a large, oversized bowl with dried cranberries and apples, and set aside.
Spray a large baking dish (about 9x13) with cooking spray and set aside.
In a large saucepan or skillet, cook sausage on medium high heat until lightly brown. Once cooked, remove sausage from pan into the large bowl with the bread cubes.
Add butter to the same saucepan. Add diced shallots and onions. cover and cook until translucent. Once translucent, add diced herbs and cook for 1-2 minutes. Then add pecans and cook 2 more minutes. Then pour mixture into large bowl with bread cubes.
Then add chicken stock to the same pan. Scrape any bits off the pan and bring to a boil, then turn off heat and pour mixture over all the ingredients in the bowl with the bread cubes.
Toss with large spoons to combine. and then pour into the prepared baking dish.
Cover with foil and bake at 350 for 40 minutes. Then remove foil and continue baking for 10-15 minutes until top is golden brown.