Heat oven to 375°. Combine squash and broth in a medium-size saucepan; bring to a boil over high heat. Reduce heat to medium; simmer until squash is tender when pierced with a fork, about 20 minutes. Remove from heat and mash contents of saucepan; set aside.
Meanwhile, bring a large pot of salted water to a boil. Add penne and cook for about 11 minutes or until al dente. Drain, reserving 1 cup pasta water, and transfer to a large bowl; set aside.
Melt butter in a medium-size saucepan over medium-high heat. Whisk in flour and cook for 1 minute or until pale yellow, whisking constantly. Gradually add milk to saucepan, whisking constantly until sauce thickens. Reduce heat to low and stir in cheeses; continue stirring until cheese is completely melted. Remove from heat and allow to cool for 8 minutes. Stir in squash mixture, yogurt, salt, pepper, nutmeg, cayenne and ham.
In a large bowl, stir together pasta and cheese sauce, adding reserved pasta water by the 1/4-cupful if needed to loosen sauce.
Lightly coat a 13 x 9-inch baking dish with nonstick cooking spray. Transfer pasta mixture to dish. Sprinkle with breadcrumbs and Parmesan and spritz topping with nonstick cooking spray.
Cover with foil and bake at 375° for 20 minutes. Remove foil, and continue baking for about 35 minutes or until lightly browned on top. Serve immediately.