私はこれを正しく理解できません。JPanel のサイズを大きくするためのスライダーがあります (描画するキャンバスとして使用されます)。
JPanel がイベントを受信するたびに、setBounds() でサイズを変更すると、一瞬サイズが変更されるのがわかりますが、次の Paint などで、スライダーの優先サイズ プロパティによって指定された元のサイズに戻ります。
public class ShapesMainFrame extends JFrame {
    private PaintCanvas paintCanvas;
    public ShapesMainFrame() {
        [...]
        JScrollPane scrollPane = new JScrollPane(paintCanvas);
        scrollPane.setPreferredSize(new Dimension(1,600));
        add(scrollPane, BorderLayout.CENTER);
        pack();
    }
}
public class PaintCanvas extends JPanel {
    [...]
    public void setScale(int value) {
        setSize(1000,1000);
    }
}
JPanel のサイズを大きな値に変更しようとすると、サイズが変更され、スクロールバーが正しく表示されるはずです。最初に設定したときと同じ600pxの高さのままです。