The use of back-ticks has always been tough to debug. I don't see anything wrong with the code you posted but check for a back-tick that is NOT followed by a CrlF.
You can avoid the need for annoying back-ticks by using splatting when there are lots of parameters. You get the benefit of having a good code editor do syntax checking as you write the code, too.
Try this:
$password = ConvertTo-SecureString "Password" -AsPlainText -Force
$cred = New-Object System.Management.Automation.PSCredential ("Administrator", $password)
Install-WindowsFeature -name AD-Domain-Services -IncludeManagementTools
Import-Module ADDSDeployment
$p = @{
NoGlobalCatalog = $false
CreateDnsDelegation = $false
Credential = $cred
SafeModeAdministratorPassword = $password
CriticalReplicationOnly = $false
DatabasePath = "C:\Windows\NTDS"
DomainName = $domainName
InstallDns = $true
LogPath = "C:\Windows\NTDS"
NoRebootOnCompletion = $true
SiteName = $serverSite
SysvolPath = "C:\Windows\SYSVOL"
Confirm= $false
Force = $true
}
Install-ADDSDomainController @p