Updated implementation of Texture2D.GetData<T> for MacOS to handle subregions properly