As the cyclist said, I have to adjust my algorithm to R2019b. They solution is to use two y axes. Here's the code
close all; clear all; clc;
% create data
basevalue = 10;
rng(4);
x = -1 + 2*rand(4,3);
% bar plot
yyaxis left
b1 = bar(x, 'stacked');
set(b1, {'FaceColor'}, {[51 153 255]/255; [204 229 255]/255; [0 76 153]/255});
y_left = [-2 3];
axis([-inf inf y_left]);
% line plot
yyaxis right
p = plot(basevalue + sum(x,2));
p(1).Color = 'red';
axis([-inf inf y_left + basevalue]);
which produces
I have also to admit: Stacking negative with positive values is actually easier in R2019b.