Your post is a bit chaotic, it is not clear what you did and where you got these numbers from, and that leaves a lot to guessing (never helps).
However: 1.58 instead of 2 in the context of determining composition of hydrates doesn't look very bad.
First of all, hydrates rarely have exact composition, many of them contain well defined number of water molecules only in a narrow range of temperature and humidity, so not getting a good integer value is nothing unusual. Some compounds create series of hydrates, stable in different conditions, samples of unknown history often contain a mixture of these, so the hydration number determined experimentally can be a bit random. That being said, quick googling for thermogravimetric curve of calcium sulfate dihydrate seems to suggest its composition should be reasonably stable near the STP.
Second - what is the accuracy of the numbers you are using? Without knowing what is the experimental error it is hard to say what 1.58 really means, can be 2 is in the ±error range.