Exactly. Yamaha's style parts are simply midi files and can be as long as you want (probably there is some arbitrary limit imposed by the keyboard firmware).
But to be useful with many songs (a good style should be generic in nature) a pattern must be simple and hence short, otherwise you bake in a specific recognizable riff that is good only for one song (usually a famous song everybody immediately recognizes no matter what!).
The new Yamaha styles found in recent keyboards (Genos) unfortunately are less generic than the old ones, and more song specific (the style name itself is often a rephrased title of a well known hit of the past).
Another fundamental problem of Yamaha styles is that the keyboard firmware (20+ years old, practically unchanged since then), is as dumb as a midi player (or mp3 audio player): it plays the midi track EXACTLY as it is encoded, the same notes with the same velocity with the same timing, over and over and over again.
Since the loop is short, usually 2÷4 bars, it becomes mechanically repetitive pretty fast. To compound the problem, even fill ins, the break and the intros are dumb to the same level: they play the stone encoded sequence unaware of the context.
If a break is 8 parts wide and you call it during a main section that is playing only 3 parts (let us say drums, bass and a guitar), it is totally disruptive and completely inappropriate.
A given variation always triggers the same identical fill-in. This is not the case with a real band, and again it becomes mechanically repetitive pretty fast.
If an intro has baked in the count-in beats, then it can only be used as song intro (at the beginning) and not as riff mid song to spice up your performance.
Other manufacturer's arranger engines are probably no different, as well.
* * *
Our software, that works on all Yamaha arrangers (used as mere sound generators and keys donors) is immune of all these obvious "defects" of legacy arranger engines:
1) The velocity of all notes is continuously randomized (strength optionally selectable by the user per part and per style section). This randomization is smart: contiguous notes, such us those of a guitar strum, are randomized maintaining their natural related dynamic.
2) The timing of each note is randomized, with each part following an independent drift, as it is the case with real players (each one deviating from the ideal tempo in an independent manner). This feature is implemented in the upcoming January 2021 release.
3) For each single drum hit (note) we also randomize the sound quality, by applying randomized filter cutoff, resonance, envelope.
4) Every sound noise (fret noise, breath noise, string slide, ......) is randomized picking from a pool of similar effects. And hence you never hear the same noise in the same point of the looping pattern.
5) The count-in bars are skipped when an intro is played mid song.
6) Fill ins and breaks are context aware, the pattern and parts played depends on the current variation, the next variation, and the active parts.
Many more trade secrets are running under the hood. And all together they do make a difference.
We offer a free demo (check the link in the signature) so that everybody can try on his/her own and make an A/B comparison.
A lot of these features ... plus more are also being used in KETRON products ... as far back as the SD1. The newer SD9/7 based units and Audya also use a alot of AI within the style. We have some videos on Youtube that illustrate this.