Hi,
For your custom entity you could use TargetOwnedDynamic class.
SecurityPrincipal assignee = new SecurityPrincipal();
assignee.PrincipalId = new Guid(owneridGuid);
TargetOwnedDynamic targetAssign = new TargetOwnedDynamic();
targetAssign.EntityId = new Guid(entityGuid);
targetAssign.EntityName = "customEntityName";
AssignRequest assign = new AssignRequest();
assign.Assignee = assignee;
AssignResponse assignResponse = (AssignResponse)service.Execute(assign);
Regards,
Nishant Rana
http://nishantrana.wordpress.com