IMO: no need for two cvars, you can just check if dfmis_odds is above 0, if not, then it's disabled.
g_args does not have to be a global (it defeats the purpose of sending the id with the set_task)
PlayerDefused is not needed.
// Check if the map has a bombsite entity in it
if(engfunc(EngFunc_FindEntityByString, -1, "classname", "func_bomb_target") > 0)
might as well put everything from the plugin_init within that check (besides register_plugin and cvars)
g_c4timer does not contain the time left until explosion, should have it either countdown or check it against current time of defusal
g_defusing hardly has a purpose, you don't need to check against it to remove the task (only real reason you have it)