### Godot version

4.0 beta 15

### System information

Windows 10

### Issue description

When ticking `apply_root_scale` the scale is not applied to custom collision shape set in importer.
This apply for `shape_type`  Box, Sphere, Cylinder and Capsule

_I tried to fix it myself but i'm a bit confused on how to have acces to the `apply_root_scale` and `root_scale` at the moment where the shape is generated_

### Steps to reproduce

- Add a 3d model.
- Generate physics for the mesh
- Select a `shape_type` for example Box
- Add `root_scale` != 1 and tick `apply_root_scale`

### Minimal reproduction project

[BoxColliderImport.zip](https://github.com/godotengine/godot/files/10500751/BoxColliderImport.zip)

Object *ret;
	if (GDVIRTUAL_CALL(_post_import, p_scene, ret)) {
		return Object::cast_to<Node>(ret);
	}
	return p_scene;
}
String EditorScenePostImport::get_source_file() const {
	return source_file;
}
void EditorScenePostImport::init(const String &p_source_file) {
	source_file = p_source_file;
}
EditorScenePostImport::EditorScenePostImport() {
}
Variant EditorScenePostImportPlugin::get_option_value(const StringName &p_name) const {
	ERR_FAIL_COND_V_MSG(current_options == nullptr && current_options_dict == nullptr, Variant(), "get_option_value called from a function where option values are not available.");
	ERR_FAIL_COND_V_MSG(current_options && !current_options->has(p_name), Variant(), "get_option_value called with unexisting option argument: " + String(p_name));
	ERR_FAIL_COND_V_MSG(current_options_dict && !current_options_dict->has(p_name), Variant(), "get_option_value called with unexisting option argument: " + String(p_name));
	if (current_options && current_options->has(p_name)) {
		return (*current_options)[p_name];
	}
	if (current_options_dict && current_options_dict->has(p_name)) {
		return (*current_options_dict)[p_name];
	}
	return Variant();
}
void EditorScenePostImportPlugin::add_import_option(const String &p_name, Variant p_default_value) {