Sorry one last question. I was able to achieve updating the profile from reference host OK using this:
**************************************************************************
$Profile = Get-VMHostProfile
$Spec = New-Object VMware.Vim.HostProfileHostBasedConfigSpec
$Spec.Host = New-Object VMware.Vim.ManagedObjectReference
$Spec.Host = $Profile.ReferenceHost.ExtensionData.MoRef
$Spec.useHostProfileEngine = $true
$Profile.ExtensionData.UpdateHostProfile($Spec)
**************************************************************************
But is there a way to have only the changed setting to be overwritten?