I have never been a great advocate of playing much stronger players, but playing against stronger players is definitely fundamental to development.
The metaphor I've always gone by is that the six minute miler gains little from trying to train with the four minute miler. After all, the four minute miler has no choice but to reduce their speed, while the six minute miler will still fail to even nearly keep up. This arrangmeent is bad for both of them. On the other hand, if the six minute miler trains with the 5:45 miler, the chance of improvement is much greater, as the goal of keeping up is a realistic one that can be accomplished by running a little better and a little smarter. in the end, the better miler may gain, too, needing to make similar advances to resume winning the race.
I believe the same thing happens when pool players of highly different skill levels hook up. For a "B" player, I'd say that watching a pro player playing against another pro player and taking notes will offer a much greater learning experience than playing against them, as the latter situation does not lend itself nearly as well to accumulating information about how a pro goes about his business.