title: `UIBezierPath.fill()` does not fill inside of `draw()`
body: <p>I'm cutting a rectangle out of a semi-transparent <code>UIView</code>. When I use <code>UIRectFill()</code> it works as expected. However when I create a <code>UIBezierPath</code> with rounded corners, <code>fill()</code> does not seem to do anything. Oddly, calling <code>stroke()</code> on that same path works fine.</p>
  
  <p><strong>WORKS:</strong> </p>
  
  <pre><code>override func draw(_ rect: CGRect) {
      screenColor.set()
      UIRectFill(self.bounds)
  
      let viewfinderRect = CGRect(x: 50, y: 50, width: 100, height: 100)
  
      UIColor.clear.setFill()
      UIRectFill(viewfinderRect)  //Works!
  }
  </code></pre>
  
  <p><strong>DOES NOT WORK:</strong></p>
  
  <pre><code>override func draw(_ rect: CGRect) {
      screenColor.set()
      UIRectFill(self.bounds)
  
      let viewfinderRect = CGRect(x: 50, y: 50, width: 100, height: 100)
      let path = UIBezierPath(roundedRect: viewFinderRect, cornerRadius:  10.0)
  
      UIColor.clear.setFill()
      path.fill()             // Does not work!
      //path.stroke()         // Works!
  }
  </code></pre>