Silicon is the enemy
BMW removed it's silicon based product for rubber lubrication and replaced it with a special grease that last a long time.
I use it, and it lasts until the car is polished badly with a silicon based polish. (normally not by me
)
The solution is a two step process,
1, Remove the silicon with BMW silicon remover (a bottle cost about £1.50) from the rubber seals, basically clean them. Use the silicon remover neat on the seals, using a clean cloth.
2, Apply Carbaflo KSP105 to the seals and allow it to dry (this is expensive, £30 ish BMW part no. 83 23 0 309 627) you could apply it to 50 cars, or 1 car 50 times.
This removes the creaky seals noise (assuming you find the right seal) for about 4-5 months.
My march 07 SB, started creaking after 2 weeks, I applied Carbaflo, and my car might need another application soon. We also had a creak with our A2, this solved it for over a year before it returned. I have been using this solution for a couple of years on various makes of car and it works a treat.
Chris.