It looks like a team is created with each business unit and that the ownerId should be the team rather than the business unit, so ...
var owner = crmService.BusinessUnitSet.First();
becomes
var team = crmService.TeamSet.First();
and
newAccount.Ownerid = new CrmServiceReference.EntityReference() { Id = owner.BusinessUnitId, Name = owner.Name, LogicalName = "businessunit" };
becomes
newAccount.Ownerid = new CrmServiceReference.EntityReference() { Id = team.TeamId, Name = owner.Name, LogicalName = "team" };