I think this is working as expected , when you create a maintenance schedule at the parent group level it gets applied to all the devices in the sub groups and when you delete one of the schedules it gets removed for all of the sub groups/devices .
One point to note here is that the schedules that you apply at the parent group level are applied to the devices inside the sub groups and not exactly to the sub groups . When you click on the maintenance schedule tab selecting a specific group what you see on right side is the maintenance policy created at the parent group and not the one assigned at the sub group level .
What differs here is the filter you selected , "filtered by selected group" or "all systems". If you delete the schedule it deletes the schedule globally


Now, to remove the maintenance schedule for a specific sub group you would remove the individual systems which belong to that group from maintenance schedule by clicking on the X and not delete the schedule . This will leave the maintenance schedule to be used by other systems
Alternatively you can assign the needed maintenance schedules to individual sub groups instead of assigning it at the parent level , this would avoid the need to remove the systems manually after applying the schedule
Hope this helps