XDataWebClient.RawInvoke Parameter

I don't know what data your service expects? What is the service interface declaration?
I would guess that you expect a JSON object, not a string, thus you have to use this:

var
  Param: TJSObject;
begin
  Param := TJSJson.parseObject('{"Function":"StartService","Version":10000,"Data":{"ServiceID":"'+id+'"}}');
  XDataClient.RawInvoke('IKernelFunc.StartService', [Param], @OnResult);