### Godot version

v4.0.stable.official [92bee43ad]

### System information

Windows 10, 64bit

### Issue description

When change `ItemList`‘s icon_scale with code, itemlist not update:
![GIF](https://user-images.githubusercontent.com/35988767/222378909-ff9828aa-6714-478a-abbe-55477f28d85d.gif)

And force call `queue_redraw()`, icon size was udpate, but item border not.
![GIF](https://user-images.githubusercontent.com/35988767/222379478-832c7668-5182-4e1e-bfdb-cc137c19f77a.gif)

And if resize window, itemlist update correct.
![GIF](https://user-images.githubusercontent.com/35988767/222381049-3a45383d-9a40-4598-b64d-ec10d22754d7.gif)


### Steps to reproduce

/

### Minimal reproduction project

[ItemListTest.zip](https://github.com/godotengine/godot/files/10869385/ItemListTest.zip)

if (auto_height) {
				auto_height_value = ofs.y + max_h + theme_cache.panel_style->get_minimum_size().height;
			}
			scroll_bar->set_max(max);
			scroll_bar->set_page(page);
			if (max <= page) {
				scroll_bar->set_value(0);
				scroll_bar->hide();
			} else {
				scroll_bar->show();
				if (do_autoscroll_to_bottom) {
					scroll_bar->set_value(max);
				}
			}
			break;
		}
	}
	update_minimum_size();
	shape_changed = false;
}
void ItemList::_scroll_changed(double) {
	queue_redraw();
}
void ItemList::_mouse_exited() {
	if (hovered > -1) {
		hovered = -1;
		queue_redraw();
	}
}
int ItemList::get_item_at_position(const Point2 &p_pos, bool p_exact) const {