### Preflight Checklist

- [X] I have read the [Contributing Guidelines](https://github.com/electron/electron/blob/main/CONTRIBUTING.md) for this project.
- [X] I agree to follow the [Code of Conduct](https://github.com/electron/electron/blob/main/CODE_OF_CONDUCT.md) that this project adheres to.
- [X] I have searched the [issue tracker](https://www.github.com/electron/electron/issues) for a feature request that matches the one I want to file, without success.

### Electron Version

16.0.5

### What operating system are you using?

Windows

### Operating System Version

Windows 11 21H2

### What arch are you using?

x64

### Last Known Working Electron version

_No response_

### Expected Behavior

If a window has the `maximizable` property set to `false`, the built-in title bar overlay should be updated and the maximise button should be disabled. And if a window has the `minimizable` property set to `false`, the built-in title bar overlay should be updated and the minimise button should be disabled.

### Actual Behavior

These buttons are still active on the windows that have these properties set to `false`.
![image](https://user-images.githubusercontent.com/72353925/147394733-edffab52-5fea-483d-a62a-840596810551.png)

Main Window (the first one):
maximizable -> true
minimizable -> true

Editor Window (the second one):
maximizable -> true
minimizable -> true

Custom Alert Window (the third one):
maximizable -> false
minimizable -> true

About Window (the fourth one):
maximizable -> false
minimizable -> false

### Testcase Gist URL

_No response_

### Additional Information

_No response_
shell/browser/ui/views/win_caption_button_container.cc
#include "shell/browser/ui/views/win_caption_button_container.h"
#include <memory>
#include <utility>
#include "shell/browser/ui/views/win_caption_button.h"
#include "shell/browser/ui/views/win_frame_view.h"
#include "ui/base/l10n/l10n_util.h"
#include "ui/strings/grit/ui_strings.h"
#include "ui/views/layout/flex_layout.h"
#include "ui/views/view_class_properties.h"
namespace electron {
namespace {
std::unique_ptr<WinCaptionButton> CreateCaptionButton(
    views::Button::PressedCallback callback,
    WinFrameView* frame_view,
    ViewID button_type,
    int accessible_name_resource_id) {
  return std::make_unique<WinCaptionButton>(
      std::move(callback), frame_view, button_type,
      l10n_util::GetStringUTF16(accessible_name_resource_id));
}
bool HitTestCaptionButton(WinCaptionButton* button, const gfx::Point& point) {
  return button && button->GetVisible() && button->bounds().Contains(point);
}
}  
WinCaptionButtonContainer::WinCaptionButtonContainer(WinFrameView* frame_view)