/// <summary>Renders DICOM image to System.Drawing.Image</summary>
		/// <param name="frame">Zero indexed frame number</param>
		/// <returns>Rendered image</returns>
		public Image RenderImage(int frame = 0) {
			if (frame != _currentFrame || _pixelData == null)
				Load(Dataset, frame);

			var graphic = new ImageGraphic(_pixelData);

            try
            {
                if (ShowOverlays)
                {
                    foreach (var overlay in _overlays)
                    {
					if ((frame + 1) < overlay.OriginFrame || (frame + 1) > (overlay.OriginFrame + overlay.NumberOfFrames - 1))
						continue;

					var og = new OverlayGraphic(PixelDataFactory.Create(overlay), overlay.OriginX - 1, overlay.OriginY - 1, OverlayColor);
					graphic.AddOverlay(og);
                        og.Scale(this._scale);
				}
			}

                var image = graphic.RenderImage(_pipeline.LUT);

                return new Bitmap(image);
            }
            finally
            {
                if (graphic != null)
                {
                    graphic.Dispose();
                }
            }
		}