diff --git a/Chart.cabal b/Chart.cabal
--- a/Chart.cabal
+++ b/Chart.cabal
@@ -1,5 +1,5 @@
 Name: Chart
-Version: 1.9.1
+Version: 1.9.3
 License: BSD3
 License-file: LICENSE
 Copyright: Tim Docker, 2006-2014
@@ -21,7 +21,7 @@
   Build-depends: base >= 3 && < 5
                , old-locale
                , time, mtl, array
-               , lens >= 3.9 && < 4.18
+               , lens >= 3.9 && < 4.19
                , colour >= 2.2.1 && < 2.4
                , data-default-class < 0.2
                , mtl >= 2.0 && < 2.3
diff --git a/Graphics/Rendering/Chart/Drawing.hs b/Graphics/Rendering/Chart/Drawing.hs
--- a/Graphics/Rendering/Chart/Drawing.hs
+++ b/Graphics/Rendering/Chart/Drawing.hs
@@ -129,7 +129,7 @@
 --   the given 'PointStyle'.
 withPointStyle :: PointStyle -> BackendProgram a -> BackendProgram a
 withPointStyle (PointStyle cl bcl bw _ _) m = 
-  withLineStyle (def { _line_color = bcl, _line_width = bw }) $ 
+  withLineStyle (def { _line_color = bcl, _line_width = bw, _line_join = LineJoinMiter }) $ 
     withFillStyle (solidFillStyle cl) m
 
 withDefaultStyle :: BackendProgram a -> BackendProgram a
@@ -375,9 +375,9 @@
             then       fromIntegral n * 2*pi/fromIntegral sides
             else (0.5 + fromIntegral n)*2*pi/fromIntegral sides
           angles = map intToAngle [0 .. sides-1]
-          (p1:p1s) = map (\a -> Point (x + r * sin a)
+          (p1:p1':p1s) = map (\a -> Point (x + r * sin a)
                                       (y + r * cos a)) angles
-      let path = G.moveTo p1 <> mconcat (map lineTo p1s) <> lineTo p1
+      let path = G.moveTo p1 <> mconcat (map lineTo $ p1':p1s) <> lineTo p1 <> lineTo p1'
       fillPath path
       strokePath path
     PointShapeArrowHead theta ->
diff --git a/Graphics/Rendering/Chart/Layout.hs b/Graphics/Rendering/Chart/Layout.hs
--- a/Graphics/Rendering/Chart/Layout.hs
+++ b/Graphics/Rendering/Chart/Layout.hs
@@ -197,7 +197,7 @@
 
   , _layout_plots           :: [Plot x y]
     -- ^ The data sets to plot in the chart.
-    --   The are ploted over each other.
+    --   They are plotted over each other.
 
   , _layout_legend          :: Maybe LegendStyle
     -- ^ How to style the legend.
@@ -368,7 +368,7 @@
   
   , _layoutlr_plots      :: [Either (Plot x y1) (Plot x y2)]
     -- ^ The data sets to plot in the chart.
-    --   The are ploted over each other.
+    --   They are plotted over each other.
     --   The either type associates the plot with the
     --   left or right y axis.
 
diff --git a/Graphics/Rendering/Chart/Plot/FillBetween.hs b/Graphics/Rendering/Chart/Plot/FillBetween.hs
--- a/Graphics/Rendering/Chart/Plot/FillBetween.hs
+++ b/Graphics/Rendering/Chart/Plot/FillBetween.hs
@@ -15,6 +15,7 @@
     -- | These accessors are generated by template haskell
     plot_fillbetween_title,
     plot_fillbetween_style,
+    plot_fillbetween_line,
     plot_fillbetween_values,
 ) where
 
@@ -32,6 +33,7 @@
 data PlotFillBetween x y = PlotFillBetween {
     _plot_fillbetween_title  :: String,
     _plot_fillbetween_style  :: FillStyle,
+    _plot_fillbetween_line  :: Maybe LineStyle,
     _plot_fillbetween_values :: [ (x, (y,y))]
 }
 
@@ -57,6 +59,9 @@
   withFillStyle (_plot_fillbetween_style p) $ do
     ps <- alignFillPoints $ [p0] ++ p1s ++ reverse p2s ++ [p0]
     fillPointPath ps
+    case _plot_fillbetween_line p of
+      Nothing -> return ()
+      Just lineStyle -> withLineStyle lineStyle $ strokePointPath ps
   where
     pmap'    = mapXY pmap
     (p0:p1s) = map pmap' [ (x,y1) | (x,(y1,_)) <- vs ]
@@ -77,6 +82,7 @@
   def = PlotFillBetween 
     { _plot_fillbetween_title  = ""
     , _plot_fillbetween_style  = solidFillStyle (opaque $ sRGB 0.5 0.5 1.0)
+    , _plot_fillbetween_line   = Nothing
     , _plot_fillbetween_values = []
     }
 
