Currently, the only possible iteration between occurrences is to use icalrecur_iterator_next() to iterate to the next occurrence.
Similarly, there should be an icalrecur_iterator_prev() to iterate backwards. This could be used to get the previous occurrence of an item, given the occurrence.
This is needed to get rid of some workarounds with Mozilla Sunbird/Lightning.
Please go ahead and take over. I have attached a work in progress patch (untested, but compiles) but have no time to continue on this feature.
Work in Progress