I tried it again but it didn't work. I redid the fletching part of my method to be a bit more logical but there was still no fix. (I didn't implement your other suggestions yet but don't think that is the problem. Here is my code now:
if(getWidgets().get(305, 4).isVisible()) {
getWidgets().get(305,4).interact("Make 10");
} else if(!inventory.isItemSelected()){
inventory.getItem("Knife").interact("Use");
} else {
inventory.getItem("Log").interact();
}