My goal is to create an object using instances in Geometry Nodes so that I can create a lowpoly object and rip normals, etc from the GN object.
I've created a simple test setup where I'm simply distributing points on faces and then instancing on those points. I'm instancing an unwrapped mesh with a normal map. I then realize the instances because I need to do that in order to shrinkwrap to them (for lowpoly) as well as rip normals and other information.

I've read the forums and figured out that the lost uv's can be accessed via an attribute node in the shader, so I've figured out that issue.
The latest thing is that realizing instances seems to mess with the normal information somehow. I can't tell exactly what is happening, but the normals are showing the wrong information.

I've tried flipping faces in GN, which doesn't solve the problem. I've tried inverting the green channel in the shader by subtracting 1, but that doesn't work either. Although my knowledge here is spotty, so I could definitely be doing something wrong.
I'm wondering two things: Why is this happening, and is there a workaround? Also, can others replicate this behavior? I wonder if I can use capture attribute or transfer attribute to take the original normals and reapply them somehow. Any ideas? Thanks so much!