Apache may in fact be delaying writing logs. There is a buffer option for logging -- it's not the default behavior, but there is such an option, "buffered logs".
Also, there will usually be normal, every-day buffering happening with writing to files. But you should see your latest log entries popping out after a few minutes (my general estimate) at most.
Finally, are you sure you're looking at the right log file? You should check the config to be sure it's logging where you think; or use your system's open files ("fuser" on most unix flavors) command to make sure a process has the log you're looking at open, and that the process is your web server.