I forgot to update this for the answer. The problem was in an area of code I did not present:
HWND hwnd = CreateWindowA("DX11BookWindowClass", "Blank Win32 Window", WS_OVERLAPPEDWINDOW, CW_USEDEFAULT, CW_USEDEFAULT, rc.right - rc.left, rc.bottom - rc.top, NULL, NULL, hInstance, NULL);
HWND was previously defined as global, then locally again here. All I had to do was remove HWND
and it worked.
Thanks