                                 break
                             case .pill:
 								if containsDate(date - 1.day) {
-									if (isBookingEdge) {
+									if isBookingEdge() {
+										if comparisonDates.contains(date) && comparisonDates.contains(date + 1.day) {
+											ctx?.fill(CGRect(x: CGFloat(i - 1) * boxWidth + boxWidth / 2, y: y, width: boxWidth / 2 + 1, height: maxConnectorSize))
+										}
+
+										ctx?.setFillColor(bookingDateBackgroundColor.cgColor)
+
 										let path = UIBezierPath()
 										path.addArc(withCenter: CGPoint(x: x + size / 2 + 1, y: y + size / 2), radius: size / 2, startAngle: .pi / 2, endAngle: -.pi / 2, clockwise: true)
 										path.addLine(to: CGPoint(x: x + size / 2, y: y))

									ctx?.fill(CGRect(x: CGFloat(i - 1) * boxWidth + boxWidth / 2, y: (boxHeight - multipleSelectionBar) / 2, width: boxWidth / 2 + 1, height: multipleSelectionBar))
                                }
                            }
						}
                        else {
                            let size = min(boxHeight, boxWidth)

                            let x = CGFloat(i - 1) * boxWidth + (boxWidth - size) / 2
                            let y = (boxHeight - size) / 2

							let containsDate: (Date) -> Bool = isDateBookingDate ? isBookingDate : comparisonDates.contains

							// connector
