First question the Copy Custom action you have made is it deferred and impersonate = false ?
If no, on google you will find that only Custom Action deffered can have full right natively (because it's assume only deffered action can change your PC state/transaction and not Immediate action).
When you have the UAC prompt asking you to become privileged it will only make the client side privileged and not the server side of the msi (check the logs if you have enable it and use WiLogUtl.exe tools on it)
below link is a trick that will only work if you have an user interface create this custom Action it will ask for admin right for both side server and client.
http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Custom-Actions-with-elevated-privledges-td5435239.html[
^]
if (!hasAdministrativeRight)
{
if (MessageBox.Show("This installer requires administrator privileges.\r\n\r\nDo you want to attempt to restart it with administrator privileges?", "Administrator Privileges Required", MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.Yes)
{
ProcessStartInfo processInfo = new ProcessStartInfo();
processInfo.Verb = "runas";
processInfo.FileName = "msiexec";
processInfo.Arguments = "/i " + session["OriginalDatabase"];
try
{
Process.Start(processInfo);
}
catch (Win32Exception)
{
//Do nothing. Probably the user canceled the UAC window
}
}
return ActionResult.UserExit;
}