The line
d := float64(length / pagesize)
transforms to float the result of the division. Since the division itself is integer division, it results in 4, so d = 4.0 and math.Ceil(d)
is 4.
Replace the line with
d := float64(length) / float64(pagesize)
and you'll have d=4.3
and int(math.Ceil(d))=5
.