It seems that something in the Semantic Works stack doesn't handle sorting values with the xsd:floats type properly. The frontend receives the records in the wrong order.
Explicitly converting the floats to a xsd:decimal solves the problem so we use that as a workaround for now.