I actually don't see a need to extend the B to Ocean Pkwy only because it doesn't have qualifying ridership from that station. That's from my observation.
As I actually lived with some relatives near the Ocean Parkway station for 4 weeks this past summer, I can personally attest that during rush hours there is a fairly high amount of ridership at that station. Also having B trains at Ocean Parkway would reduce the amount of people getting on the Q in that area, which takes away seating from the many people who board at Sheepshead Bay and a couple of other local stations along the Q.
Also terminating at Ocean Parkway has some operations benefits that many laymen don't see.
If a train breaks down at a terminal (doesn't charge up, brakes won't release, handbrake stuck, etc.), select B trains can be terminated at Brighton Beach and sent in to the layup tracks with no disruption to service besides the loss of one stop for some trains.
I remember personally witnessing an incident in which that happened last year around July 2010. An R68A set (one I would have taken in to Manhattan) broke down at Brighton Beach, and B trains were backed up because only one track was available for terminating B trains.
I boarded a Q train instead, and damn was that Q train crowded. I felt sorry for the people getting on north of Brighton Beach. If the B terminated at Ocean Parkway that wouldn't have happened.