Reticle on quad doesnt rotate and face player

Im trying to get my reticle cross hairs to rotate and face players gaze at all times.
Any idea how to fix this?

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class Reticle_Josh : MonoBehaviour
{
    public Camera cameraFacing;
    private Vector3 originalScale;
    // Use this for initialization
    void Start()
    {
        originalScale = transform.localScale;
    }

    // Update is called once per frame
    void Update()
    {
        RaycastHit hit;
        float distance;
        if (Physics.Raycast(new Ray(cameraFacing.transform.position, cameraFacing.transform.rotation * Vector3.forward), out hit))
        {
            distance = hit.distance;
         //   Debug.Log(hit.collider.name);
        }
        else
        {
            distance = cameraFacing.farClipPlane * 0.95f;
        }

        transform.position = cameraFacing.transform.position + cameraFacing.transform.rotation * Vector3.forward * distance;
        transform.LookAt(cameraFacing.transform.position);
        transform.Rotate(0.0f, 180.0f, 0.0f);
        transform.localScale = originalScale * distance;
    }
}

Why not just make it a child of the camera? Then you can set transform.localPosition to (0,0,distance), and you never have to futz with its rotation at all.