If you create a new task via Active Sync with recurrence, the task will be created, but the recurrence is silently discarded.
I guess that the problem are the following lines 1687-1689, which don't check for Syncroton_Model_TaskRecurrence.
$ rpm -qv kolab-syncroton kolab-syncroton-2.3.15-5.13.el7.kolab_16.noarch
The following code creates Events and Tasks with recurrence.
if (!(($data->recurrence instanceof Syncroton_Model_EventRecurrence) || ($data->recurrence instanceof Syncroton_Model_TaskRecurrence)) || !isset($data->recurrence->type)) { return null; }