Yeah I had the same problems as well, if the part not orientated (0,0,0) then the CFrame constructor will treat the way the turret should face up wrong like what has happened.
To fix this you can add a offset rotation CFrame in order to correct it out like so:
while true do
script.Parent.CFrame = CFrame.new(script.Parent.Position, game.Workspace["F-16C Fighting Falcon"].Position)
script.Parent.CFrame *= CFrame.fromOrientation(a,b,c)
You will have to find the correct a,b,c values to orientated it correctly which you can do by using an Attachment CFrame. An example is in my resource which I made for these types of situations: