diff --git a/changelog.md b/changelog.md
--- a/changelog.md
+++ b/changelog.md
@@ -1,5 +1,9 @@
 # Unreleased
 
+# 0.2.0.2
+
+* Bugfix: Chronos treats months as zero-based, while `mkDate` uses 1-base.
+
 # 0.1.4.0
 * Add interpreters that remain at a fixed instant
 
diff --git a/lib/Polysemy/Chronos.hs b/lib/Polysemy/Chronos.hs
--- a/lib/Polysemy/Chronos.hs
+++ b/lib/Polysemy/Chronos.hs
@@ -1,5 +1,5 @@
 {-|
-This package provides an interpreter implementation and instances for 'Chronos' of the 'Polysemy.Time' library.
+This package provides an interpreter implementation and instances for "Chronos" of the 'Polysemy.Time' library.
 -}
 module Polysemy.Chronos (
   -- * Interpreters
diff --git a/lib/Polysemy/Chronos/Orphans.hs b/lib/Polysemy/Chronos/Orphans.hs
--- a/lib/Polysemy/Chronos/Orphans.hs
+++ b/lib/Polysemy/Chronos/Orphans.hs
@@ -1,5 +1,7 @@
-{-# OPTIONS_GHC -fno-warn-orphans #-}
+{-# options_ghc -fno-warn-orphans #-}
+{-# options_haddock prune, hide #-}
 
+-- |Orphans for "Chronos", Internal
 module Polysemy.Chronos.Orphans where
 
 import qualified Chronos as Chronos
@@ -133,7 +135,7 @@
   type CalendarDate Datetime = Date
   type CalendarTime Datetime = TimeOfDay
   mkDate y m d =
-    Date (Year (fromIntegral y)) (Month (fromIntegral m)) (DayOfMonth (fromIntegral d))
+    Date (Year (fromIntegral y)) (Month (fromIntegral m - 1)) (DayOfMonth (fromIntegral d))
   mkTime h m s =
     TimeOfDay (fromIntegral h) (fromIntegral m) (s * 1000000000)
   mkDatetime y mo d h mi s =
diff --git a/lib/Polysemy/Chronos/Time.hs b/lib/Polysemy/Chronos/Time.hs
--- a/lib/Polysemy/Chronos/Time.hs
+++ b/lib/Polysemy/Chronos/Time.hs
@@ -1,3 +1,6 @@
+{-# options_haddock prune #-}
+
+-- |Time interpreters for "Chronos", Internal
 module Polysemy.Chronos.Time where
 
 import qualified Chronos as Chronos
@@ -9,7 +12,7 @@
 
 import Polysemy.Chronos.Orphans ()
 
--- |Convenience alias for 'Chronos'.
+-- |Convenience alias for "Chronos".
 type ChronosTime =
   Time Chronos.Time Chronos.Date
 
@@ -27,7 +30,7 @@
 dateToTime =
   dayToTimeMidnight . dateToDay
 
--- |Interpret 'Time' with the types from 'Chronos'.
+-- |Interpret 'Time' with the types from "Chronos".
 interpretTimeChronos ::
   Member (Embed IO) r =>
   InterpreterFor ChronosTime r
@@ -47,7 +50,7 @@
       unit
 {-# inline interpretTimeChronos #-}
 
--- |Interpret 'Time' with the types from 'Chronos', customizing the current time at the start of interpretation.
+-- |Interpret 'Time' with the types from "Chronos", customizing the current time at the start of interpretation.
 interpretTimeChronosAt ::
   Member (Embed IO) r =>
   Chronos.Time ->
@@ -56,7 +59,7 @@
   interpretTimeChronos . interceptTimeAt @Timespan t
 {-# inline interpretTimeChronosAt #-}
 
--- |Interpret 'Time' with the types from 'Chronos', customizing the current time to be constant.
+-- |Interpret 'Time' with the types from "Chronos", customizing the current time to be constant.
 interpretTimeChronosConstant ::
   Member (Embed IO) r =>
   Chronos.Time ->
@@ -65,7 +68,7 @@
   interpretTimeChronos . interceptTimeConstant t
 {-# inline interpretTimeChronosConstant #-}
 
--- |Interpret 'Time' with the types from 'Chronos', customizing the current time to be constantly the time at the
+-- |Interpret 'Time' with the types from "Chronos", customizing the current time to be constantly the time at the
 -- start of interpretation.
 interpretTimeChronosConstantNow ::
   Member (Embed IO) r =>
diff --git a/polysemy-chronos.cabal b/polysemy-chronos.cabal
--- a/polysemy-chronos.cabal
+++ b/polysemy-chronos.cabal
@@ -5,7 +5,7 @@
 -- see: https://github.com/sol/hpack
 
 name:           polysemy-chronos
-version:        0.2.0.1
+version:        0.2.0.2
 synopsis:       Polysemy-time Interpreters for Chronos
 description:    Please see the readme on Github at <https://github.com/tek/polysemy-time>
 category:       Time
@@ -92,7 +92,7 @@
   build-depends:
       base ==4.*
     , chronos >=1.1.1 && <1.2
-    , polysemy >=1.3
+    , polysemy >=1.4
     , polysemy-time
   mixins:
       base hiding (Prelude)
