I brought my B in to the dealership over a year ago for the leaky sunroof business. They had repaired it several times. After extensive testing and replacing all panels three times, they replaced the entire sunroof assembly, and removed the rear bumper and quarter panels to check the drains. It was the drains and they ended up doing an entire interior detail and replacing the roof liner and interior door panels. They must have spent over $20k fixing the damn thing. It is tight now, and only slight drips through the panels when taking it through the high pressure blow drier at the car wash. But the leaks weren't from the panels, it was from around the base of the entire sunroof, because the drains were clogged and there was no where for the water to go except into the car, through tiny holes and gaps at the top of the drain channels and gutters.
Initially, MB claimed that this was out of warranty (car was just over three years old), but then turned around quickly and said that it was a "good faith" repair. I had the extended warranty, but they said normally the extended warranty wouldn't cover this. However, once repaired it didn't solve the problem, and it got worse and worse. MB then took it upon themselves to correct the repair at their own cost.
I talked with a friend that is a BMW rep, and he said all german cars have the same problem, and despite having different sunroofs, they all have the same basic design, and it was flawed. He says that BMW has seen tons of these fixes and still has not issued a recall. They are handling it on a case by case issue, as they think it'll be cheaper (as not everyone will run into the leaking issue, due to climate, where they park, how often they drive, etc..) and issuing a recall of this type, this late, may tarnish their image and cost them $$$. So, they are waiting until warranties expire, so they are not on the hook for these leaks.