正確には、usingステートメントはこう展開される。
FileStream fstream;
try {
 fstream = new FileStream("File Name");
 ...
} finally {
 ((IDisposable)fstream).Dispose();
}
で、Disposeメソッドの中でFlushが呼ばれる。