I have a small ncurse program I\'m running, but the output doesn\'t seem to show up unless I stick the wrefresh() in a while loop.
Is there some buffer
You are not supposed to mix operations on stdscr and windows created with newwin(). getch() operates on stdscr, so that is your problem. Replace that call with
wgetch(win);
(getch() is causing stdscr to be dumped over the top of your other window, and because that happens so quickly it looks like the other window never got displayed at all).