Have a look at this
I've used these guys 4 or 5 times now. I have always for some reason been quoted a cheaper price when I call in and ask for a quote (£45 last time - June 2012). Car has now done 137k miles (131k with me at the wheel) and seems to be going strong. I have never bothered providing OEM filter as Unipart has to be good enough.
National do use Castrol Edge LL04 Oil as prescribed by BMW
e90 330d, Montego Blue, Beige Dakota Leather, Auto, Nav Pro, Bluetooth Prep, BMW Connected Drive, Voice Control, Sports Seats, Split Rear Seat, 18" Ellipsoid Wheels Style 162 Burr Walnut Trim