This post is old but for others that may have the same kind of problem.
As indicated by Steve Ebersole, you should used "pooled-lo" optimizer in your case.
Check also your hibernate version, it should be >= 4.3.11 because there was an issue in previous versions.
To give some explanation, with pooled-lo optimizer, the value stored in the database is the low value of the next interval available.
So if the id of the last entity persisted is in [1;10], the next interval available is [11,20] and the value stored in database will be 11, as you were expecting.
Thus if you have another program that don't use hibernate and is not even aware of the increment size defined in hibernate configuration, it will still be able to insert entities without breaking the sequence.
All it will have to do is to atomically get the sequence value and increment it, and then use the value retrieve (before the "incrementation") as the new entity id it wants to insert.
In our example in order to insert one line, it will update the sequence value to 12 and add the new entity with the id 11.
Thus when hibernate will reach the last id of its current interval in memory (10), it will query the database and store the value 22 in order to keep for it self the new interval of id [12;21].