RE:barra de titulo personalizada
Yo lo he conseguido de la siguiente forma:
1) Cambiar la propiedad FormBorderStyle a None
2) En la parte de arriba del formulario, poner por ejemplo un panel y colorearlo o poner iconos... lo que se quiera. Incluir un boton para minimizar y otro de cerrar con este codigo:
boton minimizar: Me.WindowState = FormWindowState.Minimized
boton cerrar: Me.close
3) Para mover el formulario, crear estas variables a nivel de form:
dim x as integer
dim y as integer
dim pulsado as boolean
Al cargar el formulario (form_load) poner pulsado = false
Asignar al panel y a todos los objetos que esten sobre nuestra "barra de titulo" estos eventos:
objeto_MouseDown
x = Cursor.Position.X - Me.Left
y = Cursor.Position.Y - Me.Top
pulsado = True
objeto_MouseUp
pulsado = False
objeto_MouseMove
If pulsado = True Then
Me.Left = Cursor.Position.X - x
Me.Top = Cursor.Position.Y - y
End If