As duas formas abaixo podem dar certo:
Na inserção do primeiro JMenuItem coloque como segundo parâmetro a string abaixo. No lugar de 3, coloque o número total de JMenuItens que serão inseridas no JMenuBar. Esse parâmetro é só na inserção do primeiro JMenuItem, o restante se insere normalmente.
seuJMenuBar.add(arquivo, "split 3");
O parâmetro “split n” significa que a célula atual será dividida em n partes.
A segunda forma, é na inserção do logo é acrescentar a palavra “span”:
//ESTAVA ASSIM:
seuJMenuBar.add(labelComOLogo, "wrap");
//FICA ASSIM:
seuJMenuBar.add(labelComOLogo, "wrap, span");
O parâmetro “wrap” significa quebra de linha e “span” significa que a célula atual ocupará todas as células vazias à sua frente e abaixo.
Prefiro a segunda forma, pois na primeira todas as vezes que for aumentar o número de menus deve lembrar de alterar o número de splits.
OBS: MigLayout é um gerenciador de layout, ou seja, você pode usá-lo não somente aqui, mas em JPanels, JFrames, JDialogs, etc…