Ciao!
per l'inserimento in label, una volta aggiunta nel form, nel codice subito dopo la condizione che verifica che il contenuto della cella è minore di 5 puoi inserire il codice seguente:
if (Convert.ToInt32(Valore) <= 5)
{
ListBox.Items.Add(DataGridView.Rows[a].Cells[1].Value.ToString() + " | " + DataGridView.Rows[a].Cells[3].Value.ToString() + Environment.NewLine);
lblTotale.Text = ListBox.Items.Count.ToString();
}
Nell'esempio sopra ho chiamato la label LBLTOTALE.
Mettendo nella label il valore del numero di record della listbox può aiutarti a capire se è un problema solo grafico (che la listbox no nvisualizza tutti gli elementi ma in realtà ci sono) oppure se c'è qualche problema a livello della condizione per cui anche il numero totale di elementi presenti non corrisponde con quanti dovrebbero essere.
Per quanto riguarda lo scrollbar, modificarlo su winform non mi è mai capitato di averne la necessità.
Cercando su internet mi è parso di capire che non è customizzabile e l'unica è implementarlo da zero.. vedi link:
https://www.codeproject.com/Articles/14801/How-to-skin-scrollbars-for-Panels-in-C
Maurizio