I did it myself last year. . No DIY but make sure to get new screws because they can only be used once. Some tips:
Do not use any sealant it's not needed. If your leak is due to broken aluminum screws you can turn them out with the tip of a flat screw driver. Should take about 4 hours. Make sure to do an oil change the next day so if you are leaking oil, you won't leak the new one. Total parts for me was about $150. No special tool required. You will have to remove a hose on the valve cover that you will most likely break and BMW dealership won't have in stock since their techs break it all the time so I suggest you order that and return it if you don't need it. If you do break it, you will need to remove the intake manifold to take off the other end so be careful not to break it. There is absolutely no order to anything i just wrote but i hope it helps. Here are some pics:
broken bolt causing leak
Look directly under the end of the wiper, that's the hose you have to be careful with and will most likely break (it's already broke there). Aslo in that last picture you can see that I pushed the coil wires all the way down to have some working space.
Oh yea. You don't have to remove the injectors but it's a lot easier if you do. Also you will need some swivel because the screws closer to the firewall are a pain to get to. (Only two of them the rest are easy)
Don't be afraid to try it it's a lot easier than it looks and I'm no mechanic. Start Early and don't forget to have the extra hose in case it break. If you run the car without it, oil will fly everywhere. Hope this helps.