Прежде, чем приступить к поиску ошибки в коде, рекомендуется провести аналитическое исследование и доказать, что выбранная операция обладает необходимыми свойствами. Вам понадобятся бумага, карандаш, резинка и хорошо подумать.
Для начала необходимо точно определить операцию "вычитания". В данном случае, вы удаляете из "уменьшаемого" ряда все элементы, которые также присутствуют в "вычитаемом" ряду. Однако, оказывается, что результат такого вычитания будет состоять из одинакового набора элементов, но не обязательно в той же последовательности. В вашем примере, вы получили 5 единиц и 5 нулей в обоих случаях. Для того чтобы элементы также оказались в одинаковой последовательности, необходимо более детально проработать правила операции вычитания.
Кстати, отметим, что это никак не связано с кодом. Вы придумали свою операцию, от которой требуете особенных свойств. Давайте возьмем простой пример:
series_3 = '1101'
series_2 = '110'
Согласно вашей операции, результат будет '1'.
Теперь попробуем выполнить "симметричную" операцию по вашим правилам:
series_3 = '1101'
series_2 = '1'
Результат будет '101'.
Что в этом не так?