I am using the same approach as you and it works fine for me.
One guess: Check imports in the project:
import org.apache.commons.io.FileUtils;
That could be causing the error you are getting...
BTW here is my method which works fine:
public void takeScreenshot(String nameOfOutputFileIncludingExtension) throws IOException {
File scrFile = new File("");
scrFile = ((TakesScreenshot)getDriver().getScreenshotAs(OutputType.FILE);
File destination = new File("target/surefire-reports/" + nameOfOutputFileIncludingExtension);
System.out.println("Screenshot stored at:" + destination.getAbsolutePath());
FileUtils.copyFile(scrFile, destination);
}